[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


Janitor applications are now open. Apply here!


[Advertise on 4chan]


File: Shima_Rin_Reading_SICP_2.png (3.04 MB, 1625x1980)
3.04 MB PNG
>Lisp is a family of programming languages with a long history and a distinctive parenthesized prefix notation. There are many dialects of Lisp, including Common Lisp, Scheme, Clojure and Elisp.

>Emacs is an extensible, customizable, self-documenting free/libre text editor and computing environment, with a Lisp interpreter at its core.

>Emacs Resources
https://gnu.org/s/emacs
https://github.com/emacs-tw/awesome-emacs
https://github.com/systemcrafters/crafted-emacs

>Learning Emacs
C-h t (Interactive Tutorial)
https://emacs-config-generator.fly.dev
https://systemcrafters.net/emacs-from-scratch
http://xahlee.info/emacs
https://emacs.tv

>Browse imageboards in Emacs Org-Mode
https://github.com/eNotchy/4g

>Emacs Distros
https://github.com/caisah/emacs.dz

>Elisp
Docs: C-h f [function] C-h v [variable] C-h k [keybinding] C-h m [mode] M-x ielm [REPL]
https://gnu.org/s/emacs/manual/eintr.html
https://gnu.org/s/emacs/manual/elisp.html
https://github.com/emacs-tw/awesome-elisp

>Common Lisp
https://lispcookbook.github.io/cl-cookbook
https://cs.cmu.edu/~dst/LispBook
https://gigamonkeys.com/book
https://lisp-docs.github.io
https://awesome-cl.com

>Scheme
https://scheme.org
https://standards.scheme.org
https://go.scheme.org/awesome
https://research.scheme.org/lambda-papers

>Clojure
https://clojure.org
https://tryclojure.org
https://clojure-doc.org
https://clojure.land
https://www.clojure-toolbox.com
https://mooc.fi/courses/2014/clojure
https://jafingerhut.github.io/cheatsheet/clojuredocs/cheatsheet-tiptip-cdocs-summary.html

>Other
https://github.com/dundalek/awesome-lisp-languages

>Guix
https://guix.gnu.org
https://nonguix.org
https://systemcrafters.net/craft-your-system-with-guix
https://futurile.net/resources/guix
https://github.com/franzos/awesome-guix

>SICP/HtDP
https://web.mit.edu/6.001/6.037/sicp.pdf
https://htdp.org

>More Lisp Resources
https://lisp.nexus
https://rentry.org/lispresources

(call/cc >>108767473)
>>
First for permaunemployment
>>
Here's a little bit of recreational Elisp that I wrote (a while back) that can be used to make interactive functions that work on 1) the selected region or 2) the word at point.
(defun u/funcall-with-region-fn (fn)
"Return a function that calls the given function on the currently highlighted region."
(lambda (start end)
(interactive "r")
(if (use-region-p)
(let ((query (buffer-substring start end)))
(funcall fn query)))))

(defun u/funcall-with-wap-fn (fn)
"Return a function that calls the given function on the word at point."
(lambda ()
(interactive)
(funcall fn (word-at-point))))


The idea is that you first write a simple function that works on a string and does whatever you want it to do.
Then, you make wrapped versions using the functions above.

Example:
(defun i/search-jisho-for-word (word)
(interactive "sWord: ")
(browse-url (format "https://jisho.org/search/%s" (url-hexify-string word))))

;; i/search-jisho
(defalias #'i/search-jisho (u/funcall-with-wap-fn #'i/search-jisho-for-word)
"Search jisho for the word at point.")

;; i/search-jisho-region
(defalias #'i/search-jisho-region (u/funcall-with-region-fn #'i/search-jisho-for-word)
"Search jisho for the word contained in the current region.")
>>
File: 2026-05-22_07-15-09.png (100 KB, 1916x1012)
100 KB PNG
>>108874777
I'm experimenting with calling Common Lisp functions from Emacs to convert Japanese text to Romaji.
(defun ichiran-romanize-phrase (phrase)
"Romanize a PHRASE using ichiran."
(interactive "MPhrase: ")
(let* ((romanized-text (sly-eval `(ichiran:romanize ,phrase)))
(buffer (get-buffer-create "*ichiran*"))
(window (or (get-buffer-window buffer)
(switch-to-buffer-other-window buffer))))
(with-current-buffer buffer
(delete-region (point-min) (point-max))
(insert romanized-text))))

https://github.com/tshatrov/ichiran
>>
>>108880949
>convert Japanese text to Romaji
use-case?
>>
>>108880996
I'm still illiterate. I want (machine) assistance.
>>
>>108881017
at least get it to convert to kana, they take a weekend to learn
>>
Is it just me or is codeberg.org 504ing a lot today?
>>
File: 1779259881767620.png (830 KB, 1000x1400)
830 KB PNG
>>108879919
Take it easy
>>
File: double-guix.png (257 KB, 814x576)
257 KB PNG
Interesting
https://github.com/franzos/guix-rs
https://github.com/franzos/guix-install
>>
Post the CL Picard | Clojure borg image
>>
File: cl-prejudice.png (799 KB, 800x864)
799 KB PNG
>>108881527
>>
Any common non-emacs software that can view and edit org files? I might actually convince job to to use them to write software specification.
>>
>>108881656
Neovim's org support looks like it's come a long way.
https://github.com/nvim-orgmode/orgmode
Why do you want your specs to be written in org-mode?
>>
>>108881619
NHH, Java sirs
>>
>>108881656
>I might actually convince job to to use them to write software specification
don't. Support just isn't there, and the "spec" is not coherent. Datomic made the mistake of writing their documentation in Org, and now there's org markup fragments and incorrectly generated HTML littered everywhere.
>>
>>108881695
>>108881806
because the alternative is a billion excel tables and a internal IBM tool called jazz or somethign which is worse than getting shot in the balls.

We are still migrating the entire company to gitlab, but I am just a cog, can't speed up that process.
>>
>>108881924
>IBM tool called jazz
this does look horrible
>>
>>108879992
Nice

I wrote a package a while ago that does the same but in a larger scale. It uses thing-at-point to automatically recognize text objects at point as cursor moves, highlights them and makes some commands that work on regions use the thing at point as a region.

It's meant to be a component for that can be used in existing modal editing packages. I use it daily with my janky modal editing mode.

I must refactor it and figure out better user experience before I publish it in Melpa.
>>
>>108879992
>>108882188
hyperbole rebinds C-w and M-w to commands that kill/kill-ring-save the thing-at-point when transient-mark-mode is not active. it took me a while to notice it but it has been pretty useful



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.