• Open

    Multiple compilation-mode buffers
    Hi! I work mostly with React projects that support hot module reloading, so my compilation process often involves a constantly running process that recompiles every time I make changes to the code. However, I have other commands like parsing LESS into CSS that I'd also like to run while the main process is running. Is there any way I can set up multiple *compilation* buffers so that I can use compilation-mode in all of them? submitted by /u/Head-Athlete1956 [link] [comments]
    [ANN] - Wingman: LLM-assisted Copilot-style text completion
    Wingman is an Emacs port of llama.vim. (See llama.vim's technical design notes for details on how the Vim plugin works; most of the details transfer for the Emacs package, but one notable difference is that the "global" context is scoped to the current project, via project.el. It would of course make sense to make this behaviour more customizable in the future.) I've just started daily driving this (instead of Copilot.el with GitHub Copilot) and figured it was worth sharing. There are still a lot of rough edges and contributions are very welcome. Note that the README includes instructions on how to install/run/configure the llama.cpp server, and recommendations on which completion model to use. submitted by /u/mjrusso [link] [comments]
    shutting down emacs logout on ubuntu
    So title tells almost everything. This behaviour starts when I add this to early init: (require 'server) (unless (server-running-p) (server-start)) submitted by /u/kmlkclkmlkcl [link] [comments]
    [ANN] Slang (Shading Language) major mode and LSP support
    Hi all, I’ve just released slang-mode, an Emacs major-mode for Slang shaders. I personally use it daily for graphics R&D. Current features - Core language mode feature like syntax highlighting, - Built-in LSP server management (Eglot for now, lsp-mode support on the way), - some handful of helper commands to streamline work Repo: https://github.com/K1ngst0m/slang-mode Issues and PRs welcome! submitted by /u/npchitman [link] [comments]
    End of my rope: where, today, does one get the ol-notmuch package? (linking notmuch mail in org mode)
    submitted by /u/ImportanceFit1412 [link] [comments]
    Strange Magit behavior
    I've been making friends with Emacs for some time now and it's time for Magit. I open the repository, everything looks ok, I see the correct status, changes in the code, etc. but... there's a problem when I want to change branches. After executing the command magit-branch-create it correctly creates a branch (bugfix-something) from the given source, then magit-checkout and... theoretically it switches, but in the status line I still have the starting branch, e.g. dev. The only method I found to refresh the status is to restart entire emacs (zsh/bash shows the correct branch after exiting). Secondly, in our project it's common to name branches with hyphens, e.g. dev-new-feature, but emacs shows only the first part in the status line, in this case dev?!! The combination of these two problems creates an incredible mess, because I never know which branch I'm actually in and what I'm changing. Am I doing something wrong with this Magit? Is this a bug or a configuration issue? P.S. I'm using almost base Emacs + Doom with the same configuration on Linux (30.1), Windows (30.0) and Mac (29.4) and the same problem is everywhere. P.S.S. When I try change branch by mouse (click on branch name in status line) behaves the same, i.e. it changes the branch but not the contents of the status line. submitted by /u/parasit [link] [comments]
    Migrating from irssi to ERC. How customizable is it?
    I have been using irssi as my IRC client since a long time. There are many things about it that I've grown accustomed to like its window management, jumping to other windows, etc. Now that I'm on Emacs, I'm looking at making ERC more or less like irssi. Few basics I want to get right are: Channel / Private Message management: In ERC, every channel and Private message is a buffer. Since I'm on a lot of channels, this makes it hard to quickly identify other buffers. I would rather have these buffers to be hidden/invisible on the buffer list and then visit them only if I actually need them. Modeline customization. It would be nice to see the user modes in the modeline, but there is no such option in the settings. There is a erc-mode-line-format variable, but it has a limited number of variables that expand during evaluation. Keep the prompt at the bottom of the window at all times: Although there is a scrolltobottom module, it works only in channels where there is sufficient text to fill up the buffer. Otherwise it goes to the top of the buffer. Change color of own nick in channels: I couldn't find any specific face that I could assign a color to. There is a generic face for nicknames, but this changes the color for all users. Remove major modes from Modeline Auto-close and open nickbar: When I switch to a differnt buffer, the nickbar still lingers there. If I close it and then go back to a channel, then the nickbar does not come back. I'm not sure how many of these are possible already with existing modules but really hoping someone can point me to some addon packages I can install to implement these. submitted by /u/signalclown [link] [comments]
    Emacs Calc function in Elisp
    I have the following code which works great as long as all numbers in the list are integers. But, when they are not, like below, then it fails. (let* ((func-abbrev "vmedian") (func-name (intern (concat "calcFunc-" func-abbrev))) (result (funcall func-name (cons 'vec '(5 0 .25 1))))) (string-to-number (math-format-number result))) The Debugger leads me to calc-div-fractions and I can find math-make-frac from there. Above that, the comment says, ;;; Build a normalized fraction. [R I I] I take the "I" to mean integer. So, does anybody know a way around this or do I need to reimplement median without calc? While I haven't tried it, I assume Org tables work so it seems that there should be a way around it. submitted by /u/Calm-Bass-4740 [link] [comments]
    Built a simple Emacs package to sync Quip docs with Org-mode - looking for feedback!
    Hey r/emacs! I vibe-coded a small package to scratch my own itch - syncing Quip documents with Org-mode. Basically got tired of copy-pasting between the two. What it does: - Pull Quip docs as HTML → convert to Org format ✅ - Push Org content back to Quip (very basic, don't rely on it yet) ⚠️ - Auto-sync when you have quip-mode enabled - Just put cursor on a Quip link and hit C-c C-S-o to open/sync The pull/read functionality works pretty well - handles headings, formatting, images, lists, etc. The push is more of a proof-of-concept right now. Repo: https://github.com/vleonbonnet/quip-mode For some reasons LLMs are pretty bad at coding elisp, so ended-up spending as much time debbing the mistakes than if I would have coded myself. Would love feedback from other Emacs folks who might find this useful! submitted by /u/vleonbonnet [link] [comments]
    How can I write a function into which I can pipe from Eshell?
    When I'm in Eshell, I thought it would be handy to quickly write a temporary function in Eval that I can then use as a command. This is a minimal example of what I tried: ``` (defun eshell/custom-command (input) (concat "" input "")) ;;; Usage example: ;; echo "hello world" | custom-command ;;; Expected Output: ;; hello world ;;; Actual Output: ;; Wrong number of arguments: #[(input) ((concat "" input "")) nil], 0 ;; hello world ``` Looking through Eshell docs (eshell.el and esh-io.el), I don't see any examples of how to do something like this. Instead of taking the input as a function parameter, is there something "special" function to be called? submitted by /u/signalclown [link] [comments]
    Emacs Client on Windows closes frame when I close the buffer
    I haven't tested this on linux since right now I'm using a windows only machine, but whenever I open a file in the explorer or the desktop with Emacs Client, and then I close that buffer, the frame dies, it doesn't matter if i move around or visit other buffers, I can kill whatever buffer without killing the frame EXCEPT the buffer I just opened I also have the issue of files opening in the same frame except of creating a new one (adding -c doesn't work), can anyone with a windows build help me with this? submitted by /u/LazloFF [link] [comments]
  • Open

    Haskell Pragma Doc via HLS?
    is there a way I can hover on the Haskell Pragma and see the Official Doc links ? Like on hover I see the ghc docs link submitted by /u/kichiDsimp [link] [comments]
    Beginner Haskeller - Help with Maze generation types
    I have recently been working on the brilliant mazes for programmers in haskell. Which was all going well generating square mazes using a state monad over my maze type a little like so: type NodeID = (Int,Int) type Maze = Map NodeID (Node (Maybe Int) Path) data Node a e = Node { nid :: NodeID , value :: a , north :: Maybe (Edge e) , south :: Maybe (Edge e) , east :: Maybe (Edge e) , west :: Maybe (Edge e) } deriving (Show, Eq) data Edge e = Edge { nodeID :: NodeID , e :: Path } deriving (Show, Eq) Path = Open | Closed Full repo The problem I'm running into now is that the book goes from square mazes to circular ones based on polar coordinates or mazes with hexagonal rooms. You can see examples in a video the author created. My question is, how you would approach reusing the actual maze generation algorithms whilst being able to work over differently shaped mazes? I was thinking about type classes but I can't get my head around the state updates I need to do. Thanks in advance! submitted by /u/stokersss [link] [comments]
    sketches/better-counterexample-minimization at master · effectfully-ou/sketches
    QuickCheck's docs advise to implementing shrinking for tree-like data types the wrong way. This post explains how to do it better. submitted by /u/effectfully [link] [comments]
  • Open

    If a ZIO Hackathon and reality TV fused together... interesting concept
    submitted by /u/GoldenGamer5212 [link] [comments]
    Another company stopped using Scala
    Sad news for the developers at the company that I work for, but there was an internal decision to stop any new development in Scala. Every new service should be written with Javascript or Typescript. The reasons were: No Scala developers available to hire. The company does not want to hire remote. Complicated codebase. Onboarding new engineers took months given the complexity. Migrating engineers from other languages to Scala was even harder. No real productivity gains. Projects were always delayed and everyone had a feeling that things were progressing very slowly. For a long time I hated Scala so much, but lately I was stating to enjoy its benefits. I still don't like the complexity, fragmentation, and having lots of ways of doing the same thing. Hopefully these problems will eventually improve and we'll be able to advocate for using Scala again. submitted by /u/fenugurod [link] [comments]
  • Open

    End of my rope: where, today, does one get the ol-notmuch package? (linking notmuch mail in org mode)
    ((emacs-version)"GNU Emacs 30.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.49, cairo version 1.18.4)") I've gone through so many AI hallucinations and broken links it's ridiculous (4 hours just looking for a package). Some assume it's on site-lisp (it's not), some say it's in the org-plus-contrib package (depricated old combo that I shouldn't be using, some say), I added elpa.nongnu.org/nongnu/ to the archives and found a manual install I could do of ol-notmuch, which threw all kinds of compile warnings of undefined functions in notmuch-tree.el. (and cannot load org-contrib) Does anyone just have a nice using directive that will install ol-notmuch from my config on different machines? This is starting to feel hacky and fragile, I was really starting to get excited about this. (suspiciously there is almost nothing about email/notmuch in the last 3 years). Thanks for any help. submitted by /u/ImportanceFit1412 [link] [comments]
    Has anyone successfully integrated Org Mode with Claude Code? Looking for workflow experiences and tips
    Claude Code primarily uses Markdown for communication and documentation. However, I believe org could be superior for planning, executing, and maintaining context for development tasks. What I've tried so far: With my little experimentation so far, I have found that the below project structure helps me capture high level overview of project, divide feature requests into smallest possible tasks, capture context, capture architectural decision records, and capture any research it had to do while implementing the feature. So far, I have found tasks.org to be supper helpful. Below is snippet from CLAUDE.md: ### Project Root Organization For every new project create this structure. ``` project/ ├── PROJECT.org # Main project file ├── TASKS.org # Current tasks and sprint planning ├── CONTEXT.org # Session context and learnings ├── ARCHITECTURE.org # System design and decisions └── docs/ ├── PLANNING.org # Long-term planning └── RESEARCH.org # Research notes and findings What I'm looking for: Has anyone attempted to use .org files instead of .md files with Claude Code? If yes, what was your experience? Any specific challenges or workarounds? Are there any tools or scripts you've created to bridge Org Mode and Claude Code? For those who haven't tried but use both tools - what's your current workflow? Thanks in advance! submitted by /u/OneTrueLamma [link] [comments]
  • Open

    buffer-terminator (20250627.1241) --- Safely Terminate/Kill Buffers Automatically
    The buffer-terminator package has been updated to version 20250627.1241.
    vim-tab-bar (20250627.237) --- Vim-like tab bar
    The vim-tab-bar package has been updated to version 20250627.237.

  • Open

    git-annex (20250626.2344) --- Mode for easy editing of git-annex'd files
    The git-annex package has been updated to version 20250626.2344.
    bash-completion (20250626.2042) --- Bash completion for the shell buffer
    The bash-completion package has been updated to version 20250626.2042.
    evil-textobj-tree-sitter (20250626.1806) --- Provides evil textobjects using tree-sitter
    The evil-textobj-tree-sitter package has been updated to version 20250626.1806.
  • Open

    Child frames steal focus - The never (ever) ending battle
    In case the problem isn't familiar from the post title - from what I understand this is partly considered to be an Emacs bug that occurs with _some_ window manages on _some_ systems - I have the recurring problem of child frames stealing focus if the mouse moves over them - or if the mouse pointer simply happens to in the area where the popup/child frame materializes. And yes, I am aware of and have set things like `(no-accept-focus . t)`and `(no-focus-on-map . t)`in `lsp-ui-doc-frame-parameters` but it has no effect. (And that's where the talk of bugs come into it). All I have managed are less-than-optimal workarounds, e.g, a global pre-command-hook that stuffs my pointer away in the top-left corner of the screen, made lsp-ui-doc stop using child frames (which is sad, because to me that is otherwise superior to a temporary window at the bottom, etc). But then there is company-mode popups what have the same behavior. And those I certainly don't want to get rid of those. To add insult to injury, I have yet to encounter any kind of child frame that is in read-only mode, so whatever I'm typing is ending up in that child frame disrupting its contents. (Not that it has any impact other than just giving the impression of a broken system). My ./emacs.d is not... small, even though it's only months since I started over from scratch and rebuilt it all from the ground up. But I also have not been able to find anything in it that should have any particular impact on this. Does anyone have any kind of Final Solution™, tips, tricks or general advice gathered in the trench war against this, or just want to vent their frustration? (If the latter, then this post is the place and using ALL CAPS is allowed and perfectly fine. This is a safe space.) submitted by /u/tinkerorb [link] [comments]
    Terminal encoding. eshell and windows
    I have set (set-language-environment "UTF-8") in init.el, however when I run eshell I get output like Buildvorgang wird ausgeführt... IMHO this is actually Unicode and should display as Buildvorgang wird ausgeführt... When C-h v default-terminal-coding-system says ‘utf-8-dos’ shouldn't this display properly? submitted by /u/JohnDoe365 [link] [comments]
    I just started to use org mode. Can I do ALL of my annotations in org mode for the rest of my life?
    What I mean by that is: Will it be a reliable personal wiki for a big long time? Or will I get issues when it becomes too big? Or will I get limited by something like linking an image, a video, or trying to wite math formulas, idk. I'm loving org mode so far, even the basic features (which is what I know for now) like the org agenda, the todo lists, the schedules, seems so much more powerfull than what I'm used to. (I've been using Zim Wiki and Vim Wiki for the last few years). In my previous wikis felt really limited in classes where I needed to write math with Latex for exemple. Or when I wanted to plug a video or an image into the text, and then I started using emacs, and now I'm trying to learn org-mode. submitted by /u/Gbitd [link] [comments]
    Eshell disable asking for alias
    https://preview.redd.it/81badp0uo69f1.png?width=558&format=png&auto=webp&s=b8a6c7ef17afd1e182a3e257c3f6105ab02b2cc3 When you type the same thing many amouts of time, eshell trys to get you to define an alias, how to stop this? submitted by /u/Both_Confidence_4147 [link] [comments]
    Magit - PR review workflow?
    I was watching bashbunni's YT video (https://youtu.be/Zr0Cqqbmmuc) where she talks about using Emacs magit to review PRs. The flow is basically - check out the branch the PR is on, do magit-diff-range, choose main as what to compare to, then you see the overview of what is different - all the files at the top, and you can browse up and down nicely over changed chunks. You can hit RET to jump to a file to see the entire file vs. just the changed chunk. And, as she points out, you could start editing as needed, etc. However, this is where I run into problems. I cannot easily jump back as the buffer for magit diff is now gone. There seems to be a way to do ctrl-u RET and it will open the file in a new window, preserving the buffer, but, in general, I had a few questions: I find there are lots of ways to lose that magit diff beyond just opening the file with RET. Changing to any other buffer seems to do it. Is there any way to keep this buffer no matter what kind of navigation you may do? Another thing that would be nice is to somehow expand/visit the changed chunks to see the entire file in context, but still show some kind of indication of the diffs. Anyone else have a workflow for reviewing PRs that they like? submitted by /u/AnotherDevArchSecOps [link] [comments]
    What are some interesting things you do in Eshell?
    I have been a bash user for many years. I've tried zsh on and off but kept returning to bash because of the subtle differences that disrupt my workflow, but few days ago I enabled zsh again to see if I can get used to it. Something really clicked today after reading about Eshell. Previously, I've never actually used the terminal in Emacs because it felt clunky because it will move the cursor up the scrollbar buffer, edit the prompt, run unwanted commands if I press enter while somewhere in scrollback buffer, all of which felt very strange. I have gone over Mastering Eshell and this article showed the use of YASnippet in Eshell and this made be realize the value of Eshell being written in Elisp itself. Now I'm thinking what else can this tight integration do. I have some ideas but I don't know how feasible they are. For example: Alter tab completion such that if I hit tab after docker exec -it, it should show a list of currently running containers with the container id and name so I can select one. Alter tab completion for git add -p, instead of showing all files, it should have the changed files at the top of the list, since that's what I likely want. Change the background color of the buffer if I connect to specific tramp directories, and change it back when I return back to the a local directory. Yank a URL from the previous command's output. For example, git remote -v. Okay so I don't really have a good imagination and I'm really limiting myself so I wanted to get an idea about some cool hacks you can do in Eshell. submitted by /u/floofcode [link] [comments]
    Keycasting package that displays it graphically?
    I think a keycasting package will be helpful when I'm teaching. So far, all the keycasting packages I found were showing it in the modeline. I was wondering how difficult it would be to modify one of these to graphically style it like maybe an SVG or something that overlays on the bottom right corner. Emacs can actually display images, right? So is what I'm looking to do even possible or is an external application the only way? submitted by /u/signalclown [link] [comments]
  • Open

    Computing fixed-width monoidal sliding windows with chunked partial sums
    submitted by /u/rampion [link] [comments]
    HLS unable to format
    I have HLS version 2.11.0 and GHC version 9.12.2 both the lastest installed from Ghcup. I run the VSCode Haskell format, it shows that this plugin is not implemented some code 30621. But as I downgrade to GHC 9.8.4, it stats working. Why so ?! And if it is a compatibility issue, shouldn't Ghcup warm that you have incompatible installation? Same with Cabal Version and GHC version ? submitted by /u/kichiDsimp [link] [comments]
    Cabal Install and Ghcup Install
    Why are Cabal Install or Ghcup Install so slow ? I installed hakyl, and it took 10+ some minutes or even more, similarly if I install a new version of GHC, it takes 30 mins. Why ? Doing npm install, go install, pip install is so fast. but why Haskell Build Tool is so slow ? Installing Pandoc takes hours.... Even the slow of slow Brew Install is fast... Is it a genuine inherent problem or the implementation of build tool is slow ? submitted by /u/kichiDsimp [link] [comments]
  • Open

    (Video) Suspension: the magic behind composability (or "The Kyo Monad")
    submitted by /u/fwbrasil [link] [comments]
    Scala Highlights, June 2025 edition
    submitted by /u/sjrd [link] [comments]
    Keynote: Making Capabilities Safe and Convenient - Martin Odersky | Lambda Days 2025
    submitted by /u/k1v1uq [link] [comments]
  • Open

    Issue 478
    Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community. Featured Я ☞ It’s all about mappings by Murat Kasimov It’s a short live coding session where I play mosly with Optional effect using different operators. Episode 66 – Daniele Micciancio by The Haskell Interlude Niki and Mike talked to Daniele Micciancio who is a professor at UC San Diego. He’s been using Haskell for 20 years, and works in lattice cryptography. We talked to him about how he got into Haskell, using Haskell for teaching theoretical computer science and of course for his research and the role type systems and comonads could play in the design of cryptographic algorithms. Along the wa…  ( 3 min )
  • Open

    Do you also lose your `org-add-note`-notes? If not, why not?
    Just yesterday it happend again: I opened a new note for a specific task via `C-c C-z` (`org-add-note` / `org-agenda-add-note`) and started writing down some discussion points in a meeting. After a while I started looking into additional ressources (files/directories) and after some time I noticed that I killed my *Org Note*-Buffer (probably by invoking another note). I really like the functionality but really hate that it is so prone to loosing the information. I have several solutions in my head, I haven't looked into: 1) Write some Elisp to be able to have multiple *Org Note*-Buffer (or find/introduce an option, similar to `org-tree-to-indirect-buffer` with an universal argument?!) 2) Write some Elisp to immediately finish the note and moving the point accordingly... 2) Rebuild its functionality with org-capture. 3) Work on my brain to always timely close such notes. Anyone here who has/had the same pain point? What did you do? What would be recommended? submitted by /u/jonas37 [link] [comments]

  • Open

    How do you add parallelism to a complicated list of commands that the program follows?
    submitted by /u/theInfiniteHammer [link] [comments]
    Proposal: fix toRational and realToFrac for Float and Double
    submitted by /u/Bodigrim [link] [comments]
    ANN: "Haskell Modules" VS Code Extension
    I made a VS Code extension that creates a cross-package tree view of all your haskell modules. This lets you jump to your unit tests easily, or jump to your dependencies (if you have them downloaded). Please take a look. Haskell Modules on Github Haskell Modules on the VS Code Marketplace submitted by /u/friedbrice [link] [comments]
    Haskell records in 2025 (Haskell Unfolder #45)
    Will be streamed live today, 2025-06-25, 1830 UTC. Abstract: Haskell records as originally designed have had a reputation of being somewhat weird or, at worst, useless. A lot of features and modifications have been proposed over the years to improve the situation. But not all of these got implemented, or widespread adoption. The result is that the situation now is quite different from what it was in the old days, and additional changes are in the works. But the current state can be a bit confusing. Therefore, in this episode, we are going to look at how to make best use of Haskell records right now, discussing extensions such as DuplicateRecordFields*,* NoFieldSelectors*,* OverloadedRecordDot and OverloadedRecordUpdate*, and we'll take a brief look at optics.* submitted by /u/kosmikus [link] [comments]
    What we learned trying to hire a real Haskell dev — and what we’re building now because of it
    When my cofounder and I were building out our platform back in 2021, we were focused on an AI-based communication training tool - fully written in Haskell. We knew it’d be tricky to find a Haskell dev (it’s niche, we weren’t super plugged in), but we were surprised by how broken the process felt. Platforms like Toptal promised “senior Haskell engineers,” but when we got on calls, it was clear most of these people had barely touched the language. We didn’t end up hiring anyone and we had to delay our launch. That experience stuck with us, especially because we knew great Haskell developers were obviously out there, just not on the platforms we were told to use. Since then, we’ve been experimenting with something different: Building a small, invite-based community of Haskell devs - peo…
    How good are AI coding assistants with Haskell?
    It seems AI coding assistants are steadily improving, but I only hear about them with mainstream languages. How about with Haskell? Is there enough Haskell code in the training data for these tools to produce useful results? submitted by /u/SkyMarshal [link] [comments]
  • Open

    Made me think of the org !
    submitted by /u/idunnomanjesus [link] [comments]
  • Open

    calle24 (20250625.2010) --- Emacs Toolbar Support for SF Symbols
    The calle24 package has been updated to version 20250625.2010.
    rg (20250625.2009) --- A search tool based on ripgrep
    The rg package has been updated to version 20250625.2009.
    saveplace-pdf-view (20250625.1437) --- Save place in pdf-view buffers
    The saveplace-pdf-view package has been updated to version 20250625.1437.
    company-coq (20250625.922) --- A collection of extensions for Proof General's Coq mode
    The company-coq package has been updated to version 20250625.922.
  • Open

    Play Framework welcomes Depop!
    You may have seen it already: a few months ago, Depop became a Premium Sponsor of the Play Framework! 🥳 https://preview.redd.it/66rreqf1c29f1.png?width=500&format=png&auto=webp&s=29c21d52db3ecf2e6570612dbd96ae708e47e026 Depop is a community-powered circular fashion marketplace for discovering, buying, and selling secondhand fashion.👍 👉They're always hiring talented people: https://depopcareers.com/ submitted by /u/mkurz [link] [comments]
  • Open

    Default default Emacs theme while using Doom Emacs?
    Hi all As the title suggests, I’m trying to figure out if there’s a way to use the default light theme that vanilla Emacs comes with while still using Doom Emacs. I really like the old-school look of default Emacs. I grew up with late 90s/early 2000s computers and applications. So the grey window elements and white content areas are something I miss. I enjoy the fact that It’s clean and functional. I could just switch from Doom Emacs to vanilla but I’ve become quite attached to Doom’s keybindings. I’m not eager to go back to standard Emacs keybindings and get Emacs pinky. Most of the light themes available in Doom are either too bright or too stylized (e.g., solarized, zenburn variants), and don’t capture that 90s look I’m after. Does anyone know how to get the default Emacs light theme (the one you get when you launch vanilla Emacs) working in Doom? Or is there a Doom-compatible theme that closely mimics that look? Thanks in advance for any tips or guidance. submitted by /u/mistanford_1 [link] [comments]
    LSP much faster in Neovim
    I used Emacs for what is now 10 yrs. I always felt like the lsp-mode and eglot are kinda slow with flycheck and company mode taking a lot of time to complete. I've put up with it. I use eglot & eglot-booster. I also use evil from the beginning, because I migrated to emacs from vim. (doom user here) Out of curiosity I tried neovim, with astrovim dist. to see how things work there, and oh my, it is waaay faster. It uses the same language server (tsserver) but completiong and error checking is nearly instant. Can somebody tell me why is this and how could I make emacs / eglot as fast? Emacs 30 submitted by /u/skratlo [link] [comments]
    How stable is Elpaca?
    This used to work on my old machine but I'm no longer able to install it. Just to rule out any issue with my config, I've only used a minimal early-init.el and init.el from the docs. There is nothing else in my config directory. When I run Emacs, I get this error: Debugger entered--Lisp error: (file-missing "Cannot open load file" "No such file or directory" "elpaca") require(elpaca) (if (require 'elpaca-autoloads nil t) nil (require 'elpaca) (elpaca-generate-autoloads "elpaca" repo) (let ((load-source-file-function nil)) (load "./elpaca-autoloads"))) (let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory)) (build (expand-file-name "elpaca/" elpaca-builds-directory)) (order (cdr elpaca-order)) (default-directory repo)) (add-to-list 'load-path (if (file-exists-p build) build re…

  • Open

    Need alternative to async-start
    I am trying to debug this issue and the code uses async-start and something about the subprocess blows up. So I'd like to change the code as simply as possible to be synchronous so that I can debug it further. submitted by /u/pedzsanReddit [link] [comments]
    Announcing Casual Man & Help
    Two new menus focused on documentation. Man-mode help-mode Found myself a little surprised at what these modes can offer. Maybe you'll be too. submitted by /u/kickingvegas1 [link] [comments]
    Any tips for Ruby (or rails) in Emacs? I miss the "jump to definition" feature of elpy (a python package for emacs).
    submitted by /u/CowboyBoats [link] [comments]
    Broken table alignment with org-mode
    Hello everyone, I'm having an annoying problem with aligning cells when creating org tables. If I load Emacs with emacs -Q, everything works fine. However, I think my config breaks the alignment rules, and I haven't been able to find why. When using my config, If I open an org file with a table, it displays correctly : https://preview.redd.it/06f5qo6dcw8f1.png?width=1690&format=png&auto=webp&s=8b89c05473e98a7ab9f45908d5f181569e56487d However, if I press TAB inside the table, this happens : https://preview.redd.it/mc8uvf5hcw8f1.png?width=1570&format=png&auto=webp&s=49cde6abda928a0a6f02e093ab6077fea316fb8d All the spacing breaks, the width of some columns is set to arbitrary values, and no matter how I try to re-align after, it gets even more out of control. Here is my whole config :…
    I just released my first package: Kakit - Kakoune/Helix like modal editing in Emacs
    Kakit mode adds Kakoune/Helix's keybindings to Emacs (while preserving Emacs' original keybindings for the most part). It's not perfect, but it's my very own first contribution to the wonderful Emacs universe. https://github.com/abhi-kr-2100/Kakit Oh, and it's in literate style programming done completely inside Org-mode. Feel free to suggest improvements and point out my mistakes; I'm sure there are many. I have only been using Emacs for ~2 weeks seriously. I was not using Emacs because I couldn't find a package that emulated Helix/Kakoune keybindings to my satisfaction. submitted by /u/No_Suggestion5521 [link] [comments]
    Setting up Emacs native tab-bar and tab-bar-groups for a tmux-like experience
    Just published a walkthrough on how to use Emacs' built-in tab-bar and tab-bar-groups for organizing windows by session, by project, or however your workflow demands, no external packages needed. 🔹 Tab for context. 🔹 Group for projects. 🔹 Navigate with ease using C-TAB. 🔹 Navigate between groups with C-x t g. 🔹 Customizations on how it looks. 🔹 Works alongside tmux when needed. A simple approach to make Emacs feel more like a session manager. 📝 Full write-up here: 👉 https://www.rahuljuliato.com/posts/emacs-tab-bar-groups Would love to hear how you're organizing your Emacs sessions and/or if you're still using tmux full-time. 😄 submitted by /u/LionyxML [link] [comments]
    Don't loose your work when Gnome kills emacs daemon
    Answer to https://www.reddit.com/r/emacs/comments/1ldcgpi/comment/mzet5z2/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button Keeps a list of unsaved buffers; if any, inhibits logout. When you cancel Gnome's logout confirmation dialog, pops up a frame to review unsaved buffers. ;; -*- lexical-binding: t; -*- ;; Refactored with Copilot/GPT 4.1. See below for earlier versions. (require 'dbus) (require 'cl-lib) (defgroup my-inhibit-logout nil "Inhibit logout of GNOME session if buffers are modified." :group 'convenience) (defvar my-inhibit-logout--modified-buffers nil "List of buffers currently modified and tracked for logout inhibition.") (defvar my-inhibit-logout--dbus-cookie nil "GNOME session inhibitor cookie.") ;;;###autoload (define-minor-mode my-i…
    Cleaning up elfeed titles
    I often get elfeed entries with HTML codes that are a pain to read. For example: I'm getting "Error setting installer parameters" while attempting ... I want to automatically convert that to: I'm getting "Error setting installer parameters" while attempting ... Here's the code - it also does some funky stuff to stop BBC stories from repeating over and over and it modifies links in lemmy entries - but you can cherry pick your way through that if you don't want them: (defun bh/unhtmlise (str) "Replace HTML entities in STR with corresponding characters." (let ((entity-re "\\(&#x\\([0-9a-fA-F]+\\);\\)\\|\\(&#\\([0-9]+\\);\\)\\|\\(&\\([a-zA-Z]+\\);\\)")) (replace-regexp-in-string entity-re (lambda (match) (cond ;; Hex numeric ((string-match "&#x\\([0-9a-fA-F]+\\);" m…
    How can I make a proportional scrollbar?
    First time venturing into emacs, just trying out various knobs and tweaks to match my expectations I changed scroll-conservatively to 101 to scroll with arrow keys like I'm used to - but now dragging scrollbar with a mouse is strange It seems like emacs scrollbar simply rapid-fires "move view X lines"? I'm used to dragging scrollbar for large change in position, roughly aiming at the location I look for. So what I need is "me dragging scrollbar to the middle = view is in the middle of the document, fast", with larger document being moved larger amount of lines How do I do that? Is such "proportional navigation" included in emacs as a preset somewhere? Have anyone made something similar to look at? This shouldn't be that uncommon of a problem, right? submitted by /u/NooneAtAll3 [link] [comments]
    Windows native compilation
    Hey guys, I'm sure this has been answered somewhere before but I can't find a satisfying answer. Downloading the windows builds from gnu.org comes with native comp enabled. How's er, I can't actually get it to work since Emacs can't find the libgccjit library. Adding a MinGW64 bin to my path, which contains the libgccjit binary, doesnt work either. Still tells me its not found. I think I'm missing something here. Native comp is enabled in the windows builds, surely that means there's an easy way to make libgccjit available to Emacs? Has anyone else dealt with this? Thanks! submitted by /u/bepppi [link] [comments]
    Those who switched from Vim/Neovim - what's your story?
    Curious if so many things led up to the point where the switch happened, or if there was a defining moment that you could remember, and what was your initial hesitation from doing it earlier? submitted by /u/floofcode [link] [comments]
    Worg Org protocol page updated for 2025
    submitted by /u/kickingvegas1 [link] [comments]
    How to prevent AI coding assistants from leaking secrets in Emacs projects?
    Hi all, With AI coding assistants like Claude Code and GitHub Copilot becoming more powerful — scanning project context, file structures, and even long histories — I'm growing concerned about the risk of secrets (API keys, passwords, private keys, etc.) being leaked unintentionally. In Emacs, I often work on sensitive blockchain-related codebases. What are some best practices or tooling (e.g. packages, LSP settings, .dir-locals.el, etc.) to: Prevent these tools from accessing certain files or folders? Automatically mask or redact secrets in buffers sent to external services? Ensure that tools like gptel, copilot.el, or any LLM interface don’t leak .env, secrets/, or similar? Would love to hear how others are managing this securely. Thanks! submitted by /u/jishankai [link] [comments]
  • Open

    Literate git stories.
    Has anyone used org to create a narrative around git changes? The alternative to this, what I do now, is more link to places in the code from pull request (e.g then I updated the auth here ) that's fine, but it might be nicer to invert that process and use an org file and embed the diff directly? Not sure... I'm not sure the question even makes sense! I welcome your random thoughts, thanks, and hack on! submitted by /u/TheLastSock [link] [comments]
    Worg Org protocol page updated for 2025
    Happy to announce that the Org protocol page on Worg has been updated for 2025. Its last significant update was 3 years ago and much of the content on it was stale. Most of it has been refreshed, although not all due to resource availability (anybody here using recent Windows and Org protocol? Contact me.) Learn all about it at the link below. https://orgmode.org/worg/org-contrib/org-protocol.html Thanks to Max Nikulin and Christian Moe for their feedback in helping update this page! submitted by /u/kickingvegas1 [link] [comments]
  • Open

    oauth2-auto (20250624.1919) --- Automatically refreshing OAuth 2.0 tokens
    The oauth2-auto package has been updated to version 20250624.1919.
    nordic-night-theme (20250624.1732) --- A darker, more colorful version of the lovely Nord theme
    The nordic-night-theme package has been updated to version 20250624.1732.
    use-ttf (20250624.1031) --- Keep font consistency across different OSs
    The use-ttf package has been updated to version 20250624.1031.
  • Open

    Help to choose a pattern
    Are these 2 patterns equivalent? Are there some pros/cons for them except "matter of taste" I have concern the 2nd is not mentioned in the docs/books I've read till the moment class Service(val dependency: Dependency): def get:ZIO[Any,?,?] = ??? // use dependency object Service: def make: ZIO[Dependency, ?, Service] = ZIO.serviceWith[Dependency](dependency => new Service(dependency)) //... moment later ???:ZIO[Dependency,?,?] = { // ... val service = Service.make val value = service.get } VS object Service: def get:ZIO[Dependency, ?, ?] = ZIO.serviceWith[Dependency](dependency => ???) //... moment later ???:ZIO[Dependency,?,?] = { //... val value = Service.get } submitted by /u/Recent-Trade9635 [link] [comments]
  • Open

    Haskell Interlude 66: Daniele Micciancio
    Niki and Mike talked to Daniele Micciancio who is a professor at UC San Diego. He’s been using Haskell for 20 years, and works in lattice cryptography. We talked to him about how he got into Haskell, using Haskell for teaching theoretical computer science and of course for his research and the role type systems and comonads could play in the design of cryptographic algorithms. Along the way, he gave an accessible introduction to post-quantum cryptography which we really enjoyed. We hope you do, too. submitted by /u/sperbsen [link] [comments]
    Haskell Interlude 65: Andy Gordon
    Andy Gordon from Cogna is interviewed by Sam and Matti. We learn about Andy’s influential work including the origins of the bind symbol in haskell, and the introduction of lambdas in Excel. We go onto discuss his current work at Cogna on using AI to allow non-programmers to write apps using natural language. We delve deeper into the ethics of AI and consider the most likely AI apocalypse. submitted by /u/sperbsen [link] [comments]
    A collection of resources about supercompilation
    submitted by /u/etiams [link] [comments]
    Solving LinkedIn Queens with Haskell
    Solving LinkedIn Queens with Haskell - Post LinkedIn Queens is a variant of the N-Queens problem. Recently, the blogosphere has seen some interest in solving it with various tools: using SAT solvers, using SMT Solvers, using APL and MiniZinc. This one uses a conventional programming language. submitted by /u/agnishom [link] [comments]

  • Open

    Announcing Claude Code IDE: MCP based Claude Code and Emacs integration
    I would like to present to you a project I’ve been working on for the past few weeks—Claude Code IDE. This project aims to fully integrate Claude Code with Emacs through the MCP protocol, providing advanced IDE features such as selection and context awareness, diagnostics sharing, ediff integration and project-based session management. It offers functionality similar to the official VS Code Claude Code extension. Feel free to suggest improvements! submitted by /u/manzaltu [link] [comments]
    framemove.el alternative for Wayland?
    I recently switched over to using Wayland and started using the PGTK Emacs, but I noticed that one of my favourite packages framemove.el seems to be completely broken. It depends on getting the values for (frame-parameter ... 'left) and (frame-parameter ... 'top) which apparently are obfuscated on Wayland. According to /etc/PROBLEMS in emacs it's known that frame position is unknowable in Wayland by design. It's a shame because I've found it to be the most convenient way to switch between emacs running in two separate frames on a multimonitor setup. Especially if one of my frames is hidden behind another application, it brings the frame into focus. This is the reason why I haven't yet switched to ace-window. Does anyone have any replacements/solutions to this issue? For now I've resorted to setting names for my frames and selecting left and right frames based on "ID" but this feels a bit janky. Thanks. submitted by /u/fishxorchips [link] [comments]
    viewing emacs backups
    I use emacs for writing c++. Because storage space is cheap and my time isn't, I have emacs set to save A LOT of backup history. Are there any packages for doing things like making a time lapse view, or visual diff of all the versions of a file in backup vs the current version? Obviously simple-diffing can be done just by diffing the files, but this is for the case where there are a lot of old copies and would like to see which version is the one where you introduced a new bug. I use P4 for real version control, but this is for WIP that I am not ready to check in yet. Thanks submitted by /u/ChristopherHGreen [link] [comments]
    Daemon plus TRAMP on a Rpi4 or just use WSL and local emacs?
    I am having trouble finding a good answer on the web and "sycophant" AI is no help. I'm reading through the manual, it mentions the use of the emacs as a server frequently, and I see people here recommending it as well. I know that emacs daemon and client would be accessed exclusively from the CLI using ssh, which negates why I want to learn emacs. I can't get a clear answer on if the Rpi TRAMP and windows client would use the GUI. I also see a lot of complaints of TRAMP. I also have an Android Tablet and an Android E-Notebook that I was hoping I could keep sync'd with my emacs instance. submitted by /u/AgreeableWord4821 [link] [comments]
    Run an action (a hook) when a file is renamed
    submitted by /u/arthurno1 [link] [comments]
    my entire custom-file was just wiped out and im bummed man
    man i been grindin dis config since when i saw the ultra-scroll package for emacs pop off damn now its all gone. i already been stressed the f out but man doin dis config gave me the only thng i was lookin forward to doin in the day. help is there a way i can get it back? i submitted by /u/S4N7R0 [link] [comments]
    Making TRAMP go Brrrr
    submitted by /u/celeritasCelery [link] [comments]
    ae → æ in prettify-symbols-alist breaks emacs' layout
    I have the following extract in my emacs config: (defun setup-prog () (setq prettify-symbols-alist '(("formulae" . "formulæ")) ) ) (add-hook 'prog-mode-hook 'setup-prog) However when a programming mode such as bash-ts-mode has the word formulae in it, the layout gets completely broken, to the point where you cannot even tell where in the document the cursor is. Is there something I'm missing to make this work? Other subs such as lambda → λ don't cause this issue. submitted by /u/CamJN [link] [comments]
    How to find out in which order minor-modes/hooks have run?
    I have an issue with the Treemacs right-click-menu not working. I see that an issue was raised and solved. Context-menu-mode was causing problems so a context-menu-mode hook is added to locally turn it off. Locally I can see that the relevant function was defined and added as a hook and yet context-menu-mode is still on .. so either the hook didn't run or something re-enabled the mode(?). I'm at a loss on what next step to take to figure out what has/hasn't happened.. is there a way to see in which order minor modes/hooks have run? submitted by /u/Learnaboutkurt [link] [comments]
    How valid is the opinion that progn is ugly?
    I'm very new to Emacs and Lisp. Recently when I was discussing something on a chat channel, someone mentioned that progn is ugly, and is heavily used as a crutch by programmers who have only used imperative languages before. I fall in that category of people and this comment has stuck with me since then, and I wanted to understand if that comment about progn is exaggerated or if it holds true for the most part. When I look at my config, I see a lot of progn all over the place, and now I too think this is because of not knowing how to write Lisp properly and if I'm learning bad practices. submitted by /u/floofcode [link] [comments]
    What WM/DE do you use with emacs ?
    So i recently switched from neovim to emacs , the one thing that has been constantly annoying me is that i have to remap my i3 keybinds to work with emacs. I have tried cosmic which works good but it's too buggy to customize. I would really like some suggestions on what tiling Window manager or DE should i use so that i don't have to remap everything.. I'm running out of options to rebind keys. submitted by /u/Cultural_Mechanic_92 [link] [comments]
    The ultimate diss
    https://preview.redd.it/u9jspg92cl8f1.png?width=2690&format=png&auto=webp&s=0ee9cf68c67ff196154f2fc0a8c7ab3811195b4c submitted by /u/box_box_box [link] [comments]
  • Open

    How do I stop this error?!?!
    I'm newer to Emacs and I was trying to play around with org-mode and I used a simple config (use-package org-mode :init (setq org-startup-indented t)) Now when I do anything (save a file, hit an arrow key, anything at all), I get this error in the mini buffer: Warning (org-element): ‘org-element-at-point’ cannot be used in non-Org buffer # (emacs-lisp-mode) Warning (org-element): org-element--cache: Org parser error in init.el::27. Resetting. The error was: (error "rx ‘**’ range error") Backtrace: nil Please report this to Org mode mailing list (M-x org-submit-bug-report). I removed any reference to org-mode from my init.el, but this still happening. The error looks like it's unhappy with line 27, but that's nothing but a comment line that has been there for days. Any help would be great! submitted by /u/gignosko [link] [comments]
    Using a mouse in org-agenda
    If it possible to make org-agenda more GUI-like? Specifically does anyone have setups or packages, that let you click on a todo item and change it's status? submitted by /u/B_A_Skeptic [link] [comments]
  • Open

    greader (20250623.2200) --- Gnamù reader, send buffer contents to a speech engine
    The greader package has been updated to version 20250623.2200.
    proof-general (20250623.2108) --- A generic Emacs interface for proof assistants
    The proof-general package has been updated to version 20250623.2108.
    dracula-theme (20250623.2009) --- Dracula Theme
    The dracula-theme package has been updated to version 20250623.2009.
    biome (20250623.1954) --- Bountiful Interface to Open Meteo for Emacs
    The biome package has been updated to version 20250623.1954.
    git-link (20250623.1926) --- Get the GitHub/Bitbucket/GitLab URL for a buffer location
    The git-link package has been updated to version 20250623.1926.
    el-patch (20250623.1754) --- Future-proof your Elisp
    The el-patch package has been updated to version 20250623.1754.
    prettier-js (20250623.1750) --- Minor mode to format JS code on file save
    The prettier-js package has been updated to version 20250623.1750.
    verilog-ts-mode (20250623.1457) --- Verilog Tree-sitter major mode
    The verilog-ts-mode package has been updated to version 20250623.1457.
    gptel (20250623.847) --- Interact with ChatGPT or other LLMs
    The gptel package has been updated to version 20250623.847.
    hyperbole (20250623.608) --- GNU Hyperbole: The Everyday Hypertextual Information Manager
    The hyperbole package has been updated to version 20250623.608.
    modus-themes (20250623.428) --- Elegant, highly legible and customizable themes
    The modus-themes package has been updated to version 20250623.428.
    lithium (20250623.136) --- Lightweight modal interfaces
    The lithium package has been updated to version 20250623.136.
  • Open

    🌈 JVM Rainbow - Mixing Scala Java Kotlin and Groovy
    I was always curious about other jvm languages. I have always preferred Java and still do by this day, however the curiousity kicked hard and I wanted to give it a try. Although it is possible to write a project in a single language, I wanted to use multiple languages. It was tough as I had trouble finding documentation combine jvm 4 different languages. It was a fun journey, took a-lot of evening hours. I wanted to share it here so if others need it they don't need to go to the same trouble as I did. The trickiest part was the compiler configuration and the order of execution. The project can be found here: JVM Rainbow feel free to share your thoughts, feedback or ideas submitted by /u/Hakky54 [link] [comments]
    This week in #Scala (Jun 23, 2025)
    submitted by /u/petrzapletal [link] [comments]
  • Open

    hevm: symbolic and concrete EVM evaluator in Haskell
    submitted by /u/galapag0 [link] [comments]
    Working with Haskell for real
    Given that one is intrinsically motivated, is it realistic to find and work a job utilizing Haskell? If so, are there some reasonable steps that one could take to make chances more favorable? submitted by /u/InevitableTricky3965 [link] [comments]
    TIL: An Undocumented GHC Extension to Haskell 2010 FFI
    I was checking the Haskell 2010 Report for the exact format of the FFI import spec string. To my surprise, as specified in Section 8.3, the name of the header file must end with .h, and it must only contain letters or ASCII symbols, which means digits in particular are not allowed, and thus abc123.h would be an invalid header file name in Haskell 2010. I found this really surprising, so dutifully I checked the source code of GHC (as I do not find descriptions on this subject anywhere in the manual). In GHC.Parser.PostProcess, the parseCImport function is responsible for interpreting the FFI spec string, and it defines hdr_char c = not (isSpace c), which means anything other than a space is accepted as part of a header file name. Besides, the requirement that header file names must end with .h is also relieved. There still cannot be any space characters in the file name, though. So it turns out that GHC has this nice little extension to Haskell 2010 FFI, which I consider as a QoL improvement. Perhaps many have been relying on this extra feature for long without even knowing its presence. submitted by /u/Krantz98 [link] [comments]
    Optimize a tree traversal
    It's challenge time. You're given a simple tree traversal function data Tree a = Nil | Branch a (Tree a) (Tree a) deriving (Show, Eq) notEach :: Tree Bool -> [Tree Bool] notEach = go where go :: Tree Bool -> [Tree Bool] go Nil = mempty go (Branch x l r) = [Branch (not x) l r] fmap (\lU -> Branch x lU r) (go l) fmap (\rU -> Branch x l rU) (go r) It takes a tree of `Bool`s and returns all variations of the tree with a single `Bool` flipped. E.g. notEach $ Branch False (Branch False Nil (Branch False Nil Nil)) Nil results in [ Branch True (Branch False Nil (Branch False Nil Nil)) Nil , Branch False (Branch True Nil (Branch False Nil Nil)) Nil , Branch False (Branch False Nil (Branch True Nil Nil)) Nil ] Your task is to go https://ideone.com/JgzjM5 (registration not required), fork the snippet and optimize this function such that it runs in under 3 seconds (easy mode) or under 1 second (hard mode). submitted by /u/effectfully [link] [comments]
  • Open

    Zettelkasten Method Book (ENG) - Sample Notes in Appendix?
    Dear Zettlers, I am currently editing a section on the zettelkasten as an integrated thinking environment. I want to provide practical examples. This is the current section: Mind-Material-Loop: As you improve your thinking, you will be able to improve the quality of both your external sources and your own ideas. With better raw material for your work, you will get better results. Example: It took a while for me to understand the unbelievable quality of the Catholic Catechism as a source for my work on metaphysics. For a long time, I ignored this source as "theological". But concepts like "essence" and "quality" belong in same realness category like "egotism" and "self", if we consider the epistemological gap Kant addressed. The ratio between the description of the mind-material-loop (teaser: one of four loops) and the example is already a bit off. However, I have the intuition that I want to give the real example from my work in the form of an actual application. In that case, it is a note on how the difference between cardinal and lesser sin can teach us about the problem of egotism, independent of your faith. I am not sure how to phrase the justification for that. Roughly: I want to connect the theory on the Zettelkasten Method not only with higher level examples, but also with the actual raw work of mine. What do you think? Live long and prosper Sascha  ( 3 min )

  • Open

    How to deal with include files that are not within a project? (lsp-mode / ccls / xref)
    I'm working on my Mac building projects for a small ESP32 board. Thus I have my project directory with only a few source files and the majority of the include files are off in a subdirectory of ~/.platformio. When viewing a file within the project directory, the paths of the include files are "lite up" (colored) and I can get on them and type M-. and it will find that include file. As mentioned, often the include files are off in the system and library include files for the embedded system that is not within the project's directory. When viewing one of these include files that is off in another directory, all the features of xref seem to be off. I assume this is because these files are not within the same project and are not within any project at all. So, how is this generally dealt with? submitted by /u/pedzsanReddit [link] [comments]
    Fault-tolerant Org Links
    submitted by /u/spepo42 [link] [comments]
    When you open Emacs and it spends 3 seconds loading 412 packages…
    If I wanted to wait 5 seconds to write “TODO: fix later,” I’d handwrite it with a quill. Meanwhile, VSCode users act like they’ve achieved enlightenment because their editor shows emojis. Stay strong, brethren. Our init.el is long, but our patience is eternal. submitted by /u/prothtuahel [link] [comments]
    ECA (Editor Code Assistant) - AI pair programming in any editor
    submitted by /u/ovster94 [link] [comments]
    Discovered an open source alternative to Grammarly: Harper, is there an easy way to integrate it in Emacs ?
    https://news.ycombinator.com/item?id=44331362 https://writewithharper.com/ submitted by /u/ll777 [link] [comments]
    How do you decide when to split an elisp line into the next line?
    I'm new to Elisp, and I can't quite tell how to indent/format code properly. For example, all these are valid: Verison 1: (mapc 'load (delete-dups (mapcar 'file-name-sans-extension (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'")))) Verison 2: (mapc 'load (delete-dups (mapcar 'file-name-sans-extension (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'")))) Verison 3: (mapc 'load (delete-dups (mapcar 'file-name-sans-extension (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'")))) Verison 4: (mapc 'load (delete-dups (mapcar 'file-name-sans-extension (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'")))) No matter which way I format it, it just looks like a staircase. So what rule am I supposed to follow for formatting/indenting? How can I even have some consistency? submitted by /u/birdsintheskies [link] [comments]
    Two active modelines in vertico-buffer-mode
    I use vertico-buffer-mode. It works great; I can position it as I prefer. Sometimes, however there are two active modelines when the vertico is open, like this, when I find a file: https://preview.redd.it/tohm2is5je8f1.png?width=1421&format=png&auto=webp&s=d59cc768f3d545d41ada5f82887895063a3e783d As you can see, the active buffer with the file I'm editing, and the vertico mini buffer have active modelines. My config looks like this: (use-package vertico :straight (:files (:defaults "extensions/*")) :init (vertico-mode) (require 'marginalia) (vertico-buffer-mode 1) (setq vertico-buffer-display-action '(display-buffer-at-bottom (window-height . 15)))) I get it: entering the minibuffer doesn't ordinarily change the active buffer, and while the vertico buffer is a real buffer when vertico-buffer-mode is active, it's still functioning as the minibuffer, not a normal buffer. Hiding the modeline in the veritico buffer looked weird, and didn't do what I expected: https://preview.redd.it/efghaow9je8f1.png?width=1248&format=png&auto=webp&s=349e5ad05fe8e40147f15b94844c6b029236e3fa Ideally, I'd like to keep everything the same except make the previously active buffer inactive while in vertico-buffer-mode, so that only one modeline shows as active. Is that possible? submitted by /u/stevemolitor [link] [comments]
    Favorite Emacs Gear?
    The GNU Press Shop just re-opened (till July 28th). There are a few Emacs items like the reference card, mug, t-shirt, and stickers. I've been looking for a Emacs t-shirt and purchased one from FSF. Not the biggest fan of the color choice though. What is your favorite Emacs gear? submitted by /u/AppleNCheeseSandwich [link] [comments]
  • Open

    habitica (20250622.2058) --- Interface for habitica.com
    The habitica package has been updated to version 20250622.2058.
    total-recall (20250622.1434) --- Spaced repetition system
    The total-recall package has been updated to version 20250622.1434.
    copilot (20250622.1126) --- An unofficial Copilot plugin
    The copilot package has been updated to version 20250622.1126.
    easky (20250622.957) --- Control the Eask command-line interface
    The easky package has been updated to version 20250622.957.
    catppuccin-theme (20250622.712) --- Catppuccin for Emacs - 🍄 Soothing pastel theme for Emacs
    The catppuccin-theme package has been updated to version 20250622.712.
    embark-consult (20250622.535) --- Consult integration for Embark
    The embark-consult package has been updated to version 20250622.535.
    dwim-coder-mode (20250622.409) --- DWIM keybindings for C, Python, Rust, and more
    The dwim-coder-mode package has been updated to version 20250622.409.
  • Open

    Learning as a hobbyist
    It's probably a crazy task, but i'm super interested in learning Haskell I'm not a developer, i just like tinkering with programming as a hobby, so there's no pressure behind it or in creating anything super crazy What's the best way to go about learning Haskell? I have some experience with the "regular" languages, e.g. Python, C# submitted by /u/Slimakowitz [link] [comments]
    Getting nix flakes to work with haskell projects
    For a while now I've been using several different ways to try to get my haskell projects to work nicely in a nix flake. The main reason (whether it matters or not) is I just want an easily reproducible environment I can pass between machines, colleagues, etc.. For my latest (extremely small) project, I've hit a wall, and that has raised lots of questions for me about how all this is actually supposed to work (or not supposed to, as the case may be). [The flake I'm using is at the bottom of the post.] The proximate cause This project uses Beam (and I tried Opaleye). These need postgresql-libpq, which, for the life of me, I cannot get to build properly in my flake. The only way I could get nix build to work was to do some overriding haskellPackages = pkgs.haskell.packages.ghc984.exten…

  • Open

    NVIM user - looking for good comparison
    Hey all, Let me start by saying I really do love vim and I've done a good bit of work setting up a development environment for MEAN stack in Neovim. I know that Emacs had evil mode to keep those familiar keybindings. I also hear a lot about things like org mode and some other things that apparently Emacs is second to none at So, out of curiosity, I wanted to get some informal testimonies or arguments for why I should use Emacs (evil mode) instead of NVIM I put a massive amount of effort into my NVIM configuration, so Im looking for all the most compelling reasons as to what Im missing out on Thank you! I know this likely has been asked before, but its nice getting fresh perspectives! submitted by /u/Speed0fSmell [link] [comments]
    Rotating ASCII cube in Emacs Buffer.
    Source Code: https://github.com/bchatterjee99/emacs-ascii-cube Demo: https://www.youtube.com/watch?v=KTEc1ZExRTU submitted by /u/caveman-99 [link] [comments]
    Leveraging Denote and Denote-Journal Signatures?
    I am trying out denote as my file-naming convention, and I am thinking about using the signature to represent types of files, particularly in my org files. So a journal file would have a specific signature, a project file would have another, a signature specific to each domain (following the PARA philosophy), a PKM file another, and so on. That way, I can also combine the signatures, so if I have a project journal going on, it would have both the project signature and the journal signature. Is there a way, or can a way be made, to easily set a default signature for denote-journal (and maybe even denote when I create different types of notes?) I almost made this a github issue, but I'm not sure if it belongs there (I am new to all of this and delving into waters strange to me, so forgive me for my ignorance), so I chose to ask this sub first. submitted by /u/modspyder [link] [comments]
    Do you load or skip the elisp files added by your Linux distribution?
    On Fedora for example, there are a bunch of elisp files that get loaded automatically: /usr/share/emacs/site-lisp ├── autoconf │ ├── autoconf-mode.el │ ├── autoconf-mode.elc │ ├── autotest-mode.el │ └── autotest-mode.elc ├── cmake │ ├── cmake-mode.el │ └── cmake-mode.elc ├── default.el ├── desktop-file-utils │ └── desktop-entry-mode.el ├── mercurial │ ├── mercurial.el │ ├── mercurial.elc │ ├── mq.el │ └── mq.elc ├── ninja-mode.el ├── psvn.el ├── psvn-init.el ├── pypytrace-mode.el ├── pypytrace-mode.elc ├── sdcc │ ├── sdcdb.el │ └── sdcdbsrc.el ├── site-start.d │ ├── clang-format.el │ ├── clang-include-fixer.el │ └── gn-mode.el ├── site-start.d.bak │ ├── autoconf-init.el │ ├── clang-format.el │ ├── clang-include-fixer.el │ ├── cmake-init.el │ ├── desktop-entry-mode-init.el │ ├── gn-mode.el │ ├── mercurial-site-start.el │ ├── rpmdev-init.el -> /usr/share/rpmdevtools/rpmdev-init.el │ └── systemtap-init.el ├── site-start.el ├── subdirs.el └── systemtap-mode.el It doesn't seem like I need any of these. Is there some way to disable these instead of using --no-site-lisp every time? submitted by /u/birdsintheskies [link] [comments]
    doom like evil mode integration
    hi everyone, to keep it short, how can i configre doom like evil mode integration in normal emacs submitted by /u/Level_Fennel8071 [link] [comments]
    Does 'eat' have issues running in a TRAMP shell?
    I installed eat today and I use it eat-eshell-mode. Everything works fine, except when I open a TRAMP shell and try to run a TUI application like rTorrent, and it says "Error opening terminal: eat-truecolor." The same application works perfectly fine on the local eshell that it makes me wonder whether something needs to be configured specifically for TRAMP. Other times I see /ssh:root@192.168.1.101:/usr/bin/htop: No such file or directory. UPDATE: Solved by installing eshell-vterm package. submitted by /u/floofcode [link] [comments]
    What are some alternate behaviors to implement for newly created split-windows?
    One thing I found a little counterintuitive was when I created a new split-window, it makes an identical copy of the current buffer. I was told that this has some usecases like having 2 parts of the file open in separate windows, but having this behavior as the default feels very strange. I'm thinking what are some alternate split-window behaviors to implement. I mean I think it makes more sense for the user to create a split-window and then have a have default dummy buffer show up there before putting something inside. Even in the popular beginner-friendly distributions retain the the default behavior so it makes me wonder whether my thinking is flawed or I'm missing some information or context. submitted by /u/signalclown [link] [comments]
    Is there a package for search and autoimport of symbols in a project?
    Hello Emacs folks! I hate intellisense/autocomplete as it is distrubing my flow and make me not learn a project I am working on. That said ocasionally it is helpful to find symbol and auto import it in a current module. Currently I enable/disable corfu which is not optional. Is there any package/solution that would offer a minibuffer where I could search among all avilable symbols (local or to be imported) on demand? submitted by /u/najorts [link] [comments]
    New Package: org-table-highlight—Highlight Org Table Rows and Columns with Ease!
    Hey fellow Emacsers 👋 I just released a small package: `org-table-highlight` to highlight org-table columns and rows. Let me know if you find it useful or have suggestions. PRs, issues are all appreciated! 🔗 GitHub: https://github.com/llcc/org-table-highlight submitted by /u/llcc_reddit [link] [comments]
    Odd Formatting in Org Files
    I am new to emacs and am setting it up to use as a PKM/GTD/journaling system. I am currently running into an issue that I can't solve. When I type out a paragraph, and then go back to add more information, it causes the initial line I type on to extend past all the other lines, and then when it wraps back around, it creates a new line rather than blending back in to the lines below it, as highlighted in the image. (I hope that made sense) How can I fix this? I have added lines from my init.el file that may be relevant: (set-language-environment "UTF-8") (prefer-coding-system 'utf-8) (use-package flatland-theme :config (load-theme 'flatland t)) (setq-default tab-width 4 fill-column 79 auto-fill-function 'do-auto-fill) (add-hook 'org-mode-hook 'variable-pitch-mode) (custom-theme-set-faces '…
  • Open

    ob-mermaid (20250621.1655) --- Org-babel support for mermaid evaluation
    The ob-mermaid package has been updated to version 20250621.1655.
    tokei (20250621.1500) --- Display codebase statistics
    The tokei package has been updated to version 20250621.1500.
    mu4easy (20250621.1238) --- Packages + configs for using mu4e with multiple accounts
    The mu4easy package has been updated to version 20250621.1238.
    julia-vterm (20250621.854) --- A mode for Julia REPL using vterm
    The julia-vterm package has been updated to version 20250621.854.
    prompt-binder (20250621.853) --- Bind LLM prompts to key chords and editor context
    The prompt-binder package has been updated to version 20250621.853.
    ollama-buddy (20250621.851) --- Ollama LLM AI Assistant ChatGPT Claude Gemini Grok Support
    The ollama-buddy package has been updated to version 20250621.851.
    pyim-smzmdict (20250621.828) --- Strange scheMas of ZhengMa dict for pyim
    The pyim-smzmdict package has been updated to version 20250621.828.
    disproject (20250621.516) --- Dispatch project commands with Transient
    The disproject package has been updated to version 20250621.516.

  • Open

    Fun with GPTel: gptel-litellm for tracking sessions with LiteLLM
    The gptel-litellm module, which depends on the uuidgen library, adds tracking of "sessions" for users with a LiteLLM proxy backend — where each GPTel Chat buffer constitutes its own session. What this means is that all requests from the same buffer are grouped under the same session-id in LiteLLM's interface, for accounting and cost tracking purposes. An example of what this looks like can be seen in the documentation. I also recommend setting a tag for GPTel, so LiteLLM can see all requests that orginated from GPTel no matter which buffer was used: (gptel-make-openai "LiteLLM" :key gptel-api-key :host ... :models ... :header (lambda () (when-let* ((key (gptel--get-api-key))) `(("x-api-key" . ,key) ("x-litellm-tags" . "gptel"))))) submitted by /u/jwiegley [link] [comments]
    Interacting with the shell in Emacs
    Hello---I'm trying to stay in emacs while interacting with the shell. But as a beginner I'm not sure the best way to do it. When I use term (alt-x term), then I lose some emacs bindings. For example, C-x f becomes C-c f. And I lose copying and pasting with C-y. Then when I try shell (alt-x shell) I lose some shell shortcuts. For example, I'm in the habit of using alt-. to recall the argument of the previous command. How do most people interact with the shell in emacs? submitted by /u/officialgre [link] [comments]
    Emacs packages for reddit usage?
    I am a neovimmer who uses Neogit, nvim-treesitter and mason--my lsp manager-- as packages in my nvimrc. I know emacs has magit and treesitter, and I'm sure it has packages for LSP support, lsp package management, and debugging, but what about Reddit support? I heard that there's Emacs Mode for Reddit. Does anyone use it and if so, what is your experience with it. submitted by /u/Brospeh-Stalin [link] [comments]
    Custom mode line configuration tip/suggestion
    This applies to writing your own custom mode line. Extracted the tip from this post from my site: https://site.sebasmonia.com/posts/2025-06-12-my-emacs-mode-line,-and-a-config-tip.html I used to define my segments using functions: (defun hoagie-mode-line-major-mode () "Mode-line major mode segment. Show minor modes in the echo area/a tooltip." (propertize (format-mode-line mode-name) 'face 'mode-line-buffer-id 'help-echo (format-mode-line minor-mode-alist))) Then I would (:eval (hoagie-mode-line-major-mode)) when setting mode-line-format. Contrasting with the version I use now: (setq-default mode-line-modes '(:propertize mode-name help-echo (format-mode-line minor-mode-alist))) Instead of defining a new function or variable to hold the configuration, I rely on the standard variable. It makes a difference! Because if a mode adds information to the mode line, it usually relies on those default variables. I have an example. I noticed csv-mode was supposed to display the column at point. Checking out its code, I found out that it was concatenating the information to the variable mode-line-position. But by using a custom function, I completely ignored its value! And rather than add the variable in the function definition, I just revisited the whole mode line, to use more of the standard constructs. And this in turn led to using fewer (:eval... segments. submitted by /u/sebhoagie [link] [comments]
    How to go to a directory and open a file quickly?
    Hi, As the title suggests, I'm wondering if there is a way to quickly move through directories and open a file as opposed to the standard find-file command and individually type through (and tab complete) directory names before arriving to our file of interest. Previously when I was on vim, I'd use fzf as a sort of file explorer to traverse through to the directory I'm interested in quickly and just doing vim filename.txt. I'm wondering if there is a well-accepted way to do this in emacs. Thanks in advance! submitted by /u/kn0xchad [link] [comments]
    A Cult AI Computer’s Boom and Bust (shout-out to Emacs)
    https://www.youtube.com/watch?v=sV7C6Ezl35A submitted by /u/shipmints [link] [comments]
    Please help: can't identify the face name to change color
    I'd like to change the color of the "4" on my mode line. For context: it's the cursor counter for multiple cursors (mc). But me being a dumb-dumb, I can't figure out the name of the face. Any help appreciated! submitted by /u/holy-moly-ravioly [link] [comments]
    "Args out of range: "",0" error when using swiper or swiper-helm in Emacs
    Lately I often get this error when using swiper. After a couple of C-s It eventually starts the search. But it's annoying, since I intentionally write stuff in the buffer, I'm actually supposed to search for. Any idea what the problem might be? submitted by /u/tengisCC [link] [comments]
    Nyxt browser
    How many Emacs users use this browser with keyboard driven shortcuts? submitted by /u/Donieck [link] [comments]
    How did you start living inside Emacs permanently?
    I keep hearing people say that they do everything inside Emacs and I'm trying to understand how they made this journey. As I'm writing this, my Emacs uptime is just 45 minutes. I have a habit of exiting it and running it whenever I need to edit something, but I see that that's not how people use it. I hear people call Emacs as a programmable interface to their OS and it sounds very appealing. I would consider myself a power user, but just not in an Emacs context, and hearing people call it a powerful interface to the OS makes it sound very appealing, but my mind doesn't appear to be ready for something like this and I want to know how people made this leap. I mean, was this the original intention or goal or did many things coincidentally lead to permanent residence in Emacs? Just to illustrate how I'm using Emacs wrong (as per what most people have told me), I use GNOME Terminal to administer my servers, and then when I need to do something, I go into Emacs and paste the path to the file that I want to edit, and I switch back and forth. I know I can just fire up Eshell in Emacs to remote into the server but that's never my first instinct because I might not have planned on editing something so by default I use a normal terminal. As I just started working a fresh new config from scratch, I thought it would be nice to hear from people about how they journey went so I can also decide if I really weant to do it the way they do or just use it as a text edit like how I'm using currently. submitted by /u/kudikarasavasa [link] [comments]
    What would your keyboard look like if you could rearrange and even add new keys?
    I'm part of a local community of makers, with people interested in various things. Among them, there are about 2-3 people who build custom keyboards, but mostly just novelty keypads. Since then, one of those people joined a company that makes full-size keyboards and we keep seeing pictures of prototypes often. After seeing so many of these, it's got me also a bit motivated. I'll just be using standard switches but I have some CAD and PCB design experience to make the rest of the parts, so it shouldn't be too difficult to make one, just very time-consuming. I don't want to do any re-mapping at the OS-level if it can be avoided, instead have the keyboard itself emit the correct HID usage IDs. I don't plan on deviating from the QWERTY layout, and I'm not comfortable with split keyboards. However, what I am interested in is the placement of the modifier keys and maybe even adding new modifier keys. For example, I could have Esc execute (keyboard-escape-quit) but have a separate Meta key, move the Ctrl key to a more convenient location, bring back F13-F24 and use with bindings, etc. Given enough spare time and budget to spend on iterating on prototypes, I'm really curious how some of you would go about key placement and what extra keys you would add. Just for the sake of discussion, let's forget about muscle-memory confusion due to having a different keyboard at work or a laptop. So, what will this hypothetical keyboard be like? submitted by /u/signalclown [link] [comments]
  • Open

    Finding a type for Redis commands
    submitted by /u/magthe0 [link] [comments]
    [Well-Typed] GHC activities report: March-May 2025
    submitted by /u/adamgundry [link] [comments]
  • Open

    moom (20250620.1635) --- Commands to control frame position and size
    The moom package has been updated to version 20250620.1635.
    notmuch (20250620.1557) --- Run notmuch within emacs
    The notmuch package has been updated to version 20250620.1557.
    org-working-set (20250620.1501) --- Manage and visit a small and changing set of org-nodes that you work on
    The org-working-set package has been updated to version 20250620.1501.
    gtea (20250620.1334) --- Client library for the Gitea API
    The gtea package has been updated to version 20250620.1334.
    gogs (20250620.1333) --- Client library for the Gogs API
    The gogs package has been updated to version 20250620.1333.
    glab (20250620.1333) --- Client library for the Gitlab API
    The glab package has been updated to version 20250620.1333.
    buck (20250620.1333) --- Client library for the Bitbucket API
    The buck package has been updated to version 20250620.1333.
    howm (20250620.1052) --- Wiki-like note-taking tool
    The howm package has been updated to version 20250620.1052.
    kdl-mode (20250620.259) --- Major mode for editing KDL files
    The kdl-mode package has been updated to version 20250620.259.
  • Open

    Zettelkasting with a condition
    Hello everyone! I’m a diagnosed OCPD person trying to get the most out of my Zettelkasten. I’m curious if there are any other Zettlers who are also dealing with a condition or constraint, and how they’ve approached it. I’ll go first. In my case, therapy has taught me that I tend to run away from strong emotions and take refuge in problems where I feel more in control. My long list includes hi-fi systems, ergonomic keyboards, and the Zettelkasten itself. Because of my OCPD, I often get stuck in a never-ending pursuit of perfection, which ends up undermining other areas of my life. And I don’t even enjoy the results, for example: always tuning my sound system, never actually listening to music. Since the diagnosis, I’ve given up most of these "hobbies". But I don’t want to abandon my Zettelkasten. It’s been a double-edged sword: I’ve wasted entire days migrating notes from one app to another and back again, but it’s also the only place where I can productively think about myself, turning vague thoughts into concrete ideas and growing knowledge around them. So, what have I learned? My nemesis is choice. The time I waste before using something grows exponentially with the number of options available. Obsidian, for example, is "unsmokable" for me. Realizing that, I stopped using folders and tags, reducing my organizational dimensions from three to one: just links. It's nothing new, I read about it several times in this forum, but it was a hard decision to take, like jumping into a pool for the first time. Now I’m so relieved I did it. Nothing bad happened. It helped me spend more time using my notes rather than organizing them. Thanks for reading  ( 3 min )

  • Open

    Ediff question
    I’ve watched the excellent YouTube video tutorial on ediff-buffers. https://youtu.be/pSvsAutseO0?si=YLGNy3giHpJE4vWR Got a couple q’s though: When I invoke ediff-buffers the control panel for ediff pops up in a separate os window rather than a split pane in my same emacs window. Can anybody suggest a way to make it look more like what the video shows? Is there a way to automatically have it ediff the two currently viewed buffers? (Rather than my having to explicitly specify them?) what I prefer to do is visit buffer A, split with c-x 2, visit buffer B in the bottom half. Then I just want to invoke ediff on those two visible buffers in one keystroke. All tips highly appreciated! submitted by /u/Mindless_Swimmer1751 [link] [comments]
    Make Dired behave differently upon selecting a file OR a directory ?
    Hello everyone, first post here ! I started Emacs about 3 months ago (having a blast with org-roam), and I'm having trouble creating a Dired sidebar from scratch. In short, I managed to create a Dired buffer on startup with this code, partially copied from the Emacs doc : (defvar dired-side-options '(window-parameters . ((no-other-window . t) (no-delete-other-windows . t)))) (defun dired-side-window () "Create a simple frozen window with Dired in it" (interactive) (let ((diredbuff (dired-noselect default-directory))) (with-current-buffer diredbuff (dired-hide-details-mode t)) (display-buffer-in-side-window diredbuff `((side . right) (slot . 1) (window-width . 0.25) (preserve-size . (t . nil)) ,dired-side-options)))) Now, I would like Dired to behave differently with files (open a new buffer when opening a file, and display the sub-directory in the same "sidebar buffer" when clicking on a directory). This is how I tried to implement it : (defun dired-file-or-folder () (interactive) (let ((selectedfile (dired-get-file-for-visit)))) (if (file-directory-p selectedfile)) (dired-find-alternate-file)) ) However, I keep getting the same error : dired-file-or-folder: Symbol’s value as variable is void: selectedfile. I have kinda gone "head first" into ELisp, and I didn't totally understand what this means. Do you have a fix idea ? Thanks for your attention submitted by /u/Any-Fox-1822 [link] [comments]
    Org-mode auto sitemap does not include .org files in subdirectories ??
    Hi everyone, I'm using org-publish to generate a static HTML site from a directory of Org files. Everything works fine when the .org files are located in the top-level of the :base-directory. However, I noticed that :auto-sitemap t only includes .org files that are at the first level — files in subdirectories are not listed in the generated sitemap. After some digging, I realized that I might need to write a custom :sitemap-function to handle the nested structure manually. But I'm unsure what's the most idiomatic or robust way to do that. Has anyone successfully generated a sitemap that lists all .org files, regardless of directory depth? I would really appreciate any working example or guidance. Thanks! submitted by /u/lambdacoresw [link] [comments]
    gnus mail mail splitting
    I have a bunch of mail splitting rules in Gnus that have worked for years: for several addresses move to "social" folder, others to my "pro" folder, and a few others. Anything not matching a split rule go to my misc folder. So far so good. Now the complication. I have a rule that anything sent to my webdev address goes to my webdev folder. But now I get automatic messages from a Zulip system (there are many of them) that are sent to my webdev address. They get put in my webdev folder filling it with dozens of messages per day. Note: I want the messages, just not in that folder. I have made a folder just for them, but I cannot override the address matching rule, and they all inundate my webdev folder. I have tried moving the rule above the matching one, but to no avail. I cannot seem to trump the "To:" matcher. Any suggestions on how to get my "from:" rule to be respected over the "to:" rule in Gnus? submitted by /u/WorldsEndless [link] [comments]
    Any user of ob-go?
    I'm curious about whether there are users of ob-go here? Planning to improve the package (with list/table support) and I would like to know what's the pain points you have. Let me know 😊 submitted by /u/clementjean [link] [comments]
    Claudemacs: AI pair programming with Claude Code
    Hey everyone, I've been developing and using Claudemacs for a few weeks and I hope other people might get some benefit from it: https://github.com/cpoile/claudemacs It's just a simple wrapper around Claude Code with a some convenience and QOL features. I designed it so it would be as simple as possible and get out of your way. A couple reasons I'm finding it helpful: multiple Claudemacs sessions based on projectile or workspace it's simple to reference files (f) or add a line/region to the chat (a), and it will handle finding the path relative to your Claude session's cwd. lots of little quality of life features (like fixing eat-mode scroll-popping b/c of fonts, auto-scroll to bottom, eat-mode keybindings (unstick the eat-mode buffer with u if the margins messed up, C-g for esc, S- for newline, things like that) customizable with defcustom vars (see the Readme) notifications Please take a look and let me know if you run into any bugs or have thoughts for improvements. Inspired by Aidermacs and claude-code.el, so shoutout and thanks to Mathew Zeng and Steve Molitor. I just had some different ideas that fit my workflow better. Hope you enjoy! submitted by /u/kurisu111 [link] [comments]
    Question (emacs + llms)
    Emacs is one of the oldest editors out there. LLMs are recently new tech. using llms to help create emacs configs is great…I would argue revolutionary. Am I the only one who does this? past 6mo I’ve been looking for any post abt this. is it bc ppl / devs still are debating if llms are useful for programming or not… please someone enlighten me. submitted by /u/flynn1004 [link] [comments]
    How many keychords do you actually know and use daily?
    I remember most things effortlessly, phone numbers, account numbers, credit card numbers, and keyboard shortcuts to many applications. When it comes to Emacs, it's a different story altogether. I tried with cheatsheets and have one permanently in front of me but I intuitively remember only a handful of them. It doesn't feel natural and I have to consciously think about what to do and try to remember the key to perform it, and so it's already too late because I'll just do it the dumb way before it. Examples: If I have to open a file, I click the Treemacs window with the mouse and then painfully navigate it through the keyboard instead of using the find feature without Treemacs. If I have to move 25 lines up, I hold the up arrow key until it gets there instead of `C-u 10 C-p` I don't intuitively think of positions like beginning of function, previous word, next word, next line. I see an absolute position visually and think of arrow keys or the mouse to get there. Sometimes I practice the same keychord over and over again until it registers and hopefully work as muscle memory, but it doesn't because I still have to think about it before using it. Meanwhile I see people effortlessly just flying through while I'm perpetually stuck riding a tricycle backwards. One day I thought okay, let me just unplug the mouse so I don't tempted to use it, but after two minutes of struggling, I plugged it back in. Is this how it was for everyone once upon a time or am I just totally hopeless? submitted by /u/surveypoodle [link] [comments]
  • Open

    Drawing string diagrams in org-mode?
    I'm writing about category theory, which means I read books and papers with string diagrams that look like those attached. I'd like to include similar diagrams in my org files, but typesetting them in latex is nothing short of torture. I'm aware there are some org babel packages like ditaa, ob-mermaid and ob-diagrams that allow one to generate graphs and diagrams from Org but they seem more geared to the needs of real programmers (i.e. things like flowcharts and state machines) than idle theoreticians like me. If anyone has experience creating pictures through org-babel, how would you recommend I replicate either picture? Is there a javascript library or something I can ? I intend to do quite a lot of these so I'm willing to invest some time into getting a good setup submitted by /u/gerretsen [link] [comments]
  • Open

    Я ☞ It's all about mappings
    It's a short live coding session where I play mosly with Optional effect using different operators. submitted by /u/iokasimovm [link] [comments]
    For an absolute beginner, what does Haskell give me that I get nowhere else
    I'm not trying to bait anyone -- I truly know little more about Haskell than what Wikipedia tells me. So, assuming I agree to the benefits of functional programming, and a typed language (we can discuss the strength of types), what does Haskell give me that I cannot get elsewhere? For example, I've heard at least: Compilers and interpreters are easier in Haskell -- not easy, but easier Parser are easier Cloud Haskell is distributed done right But I can be functional by choice in most languages and many languages such as Scala and Go offer safer concurrency. So what I am missing -- other than my own curiosity, what does Haskell in my toolkit allow me to do that is harder now? By contrast, I understand what C dose well, what C++ tries to do, what the JVM does well, what Go's concurrency model does for me, what Prolog does for me, the power of Lisp with its code is data model -- what's the Haskell magic that I've just got to have? I've even heard there's a discussion of OCaml vs. Haskell, but as I've said, I know extremely little about it. About all I can say so far is that I've install the GHC packages. :-) I'm looking for the same thought as those who installed Rust for example -- sure, it's got a learning curve, but people said "I get it! I know what this will do for me if I learn it!" submitted by /u/Rich-Engineer2670 [link] [comments]
    Rewriting my blog in Haskell
    Hi! I've decided to embark on a side project just for me to think more functionally and learn a little bit about Haskell, where I'm rewriting my current blog in Haskell. https://github.com/rohand2290/compose Currently, I've got to a point where I've just used commonmark to parse markdown and turn it into HTML. I have yet to write to files, and I also want to create a CLI tool that's small and scriptable. Later on I also might want to create a Haskell library to generate layouts similar to what Hugo does. submitted by /u/de_2290 [link] [comments]
  • Open

    jinx (20250619.1453) --- Enchanted Spell Checker
    The jinx package has been updated to version 20250619.1453.
    web-mode (20250619.1334) --- Major mode for editing web templates
    The web-mode package has been updated to version 20250619.1334.
    ox-typst (20250619.1114) --- Typst Back-End for Org Export Engine
    The ox-typst package has been updated to version 20250619.1114.
    australia-holidays (20250619.716) --- Australian holidays for calendar
    The australia-holidays package has been updated to version 20250619.716.
    minuet (20250619.554) --- Code completion using LLM
    The minuet package has been updated to version 20250619.554.
    org-contacts (20250619.321) --- Contacts management system for Org mode
    The org-contacts package has been updated to version 20250619.321.
    org-bookmarks (20250619.104) --- Manage bookmarks in Org mode
    The org-bookmarks package has been updated to version 20250619.104.
  • Open

    Issue 477
    Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community. Featured Esqueleto Tutorial by kqr When interacting with databases in Haskell, we use a library called Persistent to create mappings between database content and Haskell data types. This library can also query for records and update them, as long as the operations involved are very basic. Once operations become more complicated, we turn to Esqueleto, a lower-level library which reuses Persistent data mappings but let us write nearly raw sql queries. Introduction to competitive programming in Haskell by Brent Yorgey A few days ago I gave a talk at ZuriHac 2025 entitled Haskell for Competitive Prog…  ( 3 min )
  • Open

    Apache Fory Serialization Framework 0.11.0 Released
    submitted by /u/Shawn-Yang25 [link] [comments]
    S2D migrated to Scala Native
    Hey, its me again! A few days ago I posted about S2D, a small library I am developing for videogames programming and man what a week its been. To keep the post short I finally finished migrating what I currently had working from JVM to pure Scala Native and I published this version to maven. (0.1.6) A few things have changed, I created a small CLI application so you can create a project template with SBT or Scala CLI with the libs, headers and dlls (basically the structure the library needs to work). This CLI tool is available on Coursier, you can read the README for the installation guide. (It needs a lot of improvements but it works) I had to learn basically everything from zero, the way the library worked before was completely different, I spent days just trying to render a simple texture into the screen but I feel like it was worth it. I also learnt a lot (thanks dave) about Scala, versioning, publishing, etc. Thats it for this post, any questions or anything you want to say I would love to read it and reply! Thanks! submitted by /u/LieEmpty7137 [link] [comments]

  • Open

    Announcing nerd-icons-multimodal v2.2.0 with added support for vc-dir
    https://github.com/abougouffa/nerd-icons-multimodal submitted by /u/abougouffa [link] [comments]
    Hacky & Minimal Clipboard Support in Terminal Emacs
    I wrote a small snippet that enables clipboard integration in terminal Emacs using just native system tools (system tools, not emacs 3rd party packages), (mainly for my emacs-solo config), this means OF COURSE you should use xclip.el or clipetty instead, this is hacky :) If not for anything else, read if you're curious on learning a bit on emacs lisp and some internals, check it out, it supports: ✅ macOS: pbcopy / pbpaste ✅ WSL: clip.exe, powershell.exe (I'd love some testers here, my VM wasn't that much consistent). ✅ Wayland: wl-copy, wl-paste ✅ X11: xclip It wires into interprogram-cut-function and interprogram-paste-function. Would love feedback or to hear about other lightweight clipboard setups you use! submitted by /u/LionyxML [link] [comments]
    How have you used emacs in learning a foreign language?
    submitted by /u/demonicwomanlol [link] [comments]
    Is there something that can reformat the output of the unit tests?
    After a recent issue with my config, I decided to start writing unit tests. Currently, the output of the tests look like this: ``` Running tests/01_test_reload.el Running 1 tests (2025-06-18 21:32:08+0530, selector ‘t’) passed 1/1 sanity-check (0.000074 sec) Ran 1 tests, 1 results as expected, 0 unexpected (2025-06-18 21:32:08+0530, 0.000174 sec) Running tests/02_math.el Running 1 tests (2025-06-18 21:32:08+0530, selector ‘t’) passed 1/1 sanity-check (0.000067 sec) Ran 1 tests, 1 results as expected, 0 unexpected (2025-06-18 21:32:08+0530, 0.000190 sec) ``` Is there something that can print it in a different format? submitted by /u/surveypoodle [link] [comments]
    C-x C-b list-buffers What sane default?
    list-buffers does what it says: It's the default action bound to C-x C-b and lists buffers. In oder to do anything meaningful, you first have to switch to it. My guess would be 90% of actions there are either RET, 1 or 2 to switch buffers, and d followed by x to delete buffers. In any case, I first have to switch to the list-buffer. What is the rationale to display a buffer-list which doesn't update anyhow (unless configured to do so) and where I will have to switch to it like in 99% of the cases? Is it an "arcane" leftover which doesn't make much sense these days? PS: I am aware of ibuffer, bs-show, did others rebind C-x C-b to one of these alternatives? Edit: Tried to edit for readabily (CRs) but have no clue why it's not working submitted by /u/JohnDoe365 [link] [comments]
    What do you use for adding license information at the top of every source file?
    Normally I just keep a LICENSE file in the repository and don't have habit of adding it at the top of every file. However, recently someone explained to me that adding it to every file is a good idea incase somebody copies an individual file to their repository then this serves as a reminder to them and their users what the original license is. Rather than having to type a key combination in every buffer, it would be nice have the header be created automatically on new buffers if the project contains a license file. Does anybody use anything like this? A package for license management (add license to project, automatically ad license headers, etc.)? submitted by /u/floofcode [link] [comments]
    Automatic citation limit when replying in message-mode
    Hey, every helpful one who use Emacs as their email client. When you respond to mailing lists or other plain-text emails, most email packages for Emacs, like notmuch, mu4e, gnus, uses message-mode with added functionality and cites the original email in full. If replying to a long email thread there is usually a few citation levels. Do you manually clean up the citation every time when responding, or have you got functions that automatically trim everything except the latest citation? Example. When replying: > a >> bb >>> ccc >>> ccc >> bb > a Automatically becomes: my response ... > a > a submitted by /u/its_randomness [link] [comments]
    What is your remote editing workflow like?
    As a freelance developer working with clients, I'm often in situations where I don't have control over which Linux distribution is running on the server. If I need to install Emacs on it, I might be permitted to install only the one available in the official repository, and sometimes this might be a slightly older version. I know I can connect with /ssh:user@host:/path/tofile and I'm aware that I can forward a emacs server session over SSH but I never actually got this to work. Sometimes while in a terminal, it's convenient to just type emacs/emacsclient /path/tofile directly from there. Maybe there is a problem in my workflow, but I'm wondering how some of you might be managing your remote editing sessions without having to copy your whole config over to the remote servers. submitted by /u/signalclown [link] [comments]
    Variable-pitch text modes, fixed-pitch programming modes
    So I wanted to set up Emacs like this: Use the system UI font for the modeline and other UI elements Use a variable-pitch font for text modes Used a fixed-pitch font for programming modes and tables, code blocks, etc., in text modes Easy, right? Well, none of the easy things I tried quite worked, as it turned out. First off, I'm using one of the EF themes, and both those and the Modus themes have a variable-pitch-ui setting that I used, along with doom-modeline, to make an attractive modeline set in Apple's San Francisco UI font. Great! The trouble came when I wanted to use variable pitch for text modes. "What about ef-themes-mixed-fonts? Isn't that expressly for that?" Turns out, no. What it does is set tables, code blocks, and such to inherit from fixed-pitch and everything els…
  • Open

    MCP library and server for Haskell (by Claude)
    Hey r/haskell, I wanted an implementation of the MCP protocol to use with some internal tools I had. Specifically, I needed a server with the HTTP transport and support for OAuth authentication. Sadly I saw drshades server only after I wrote this one, but there's no harm in having some alternatives! Based on the JSON schema for MCP, a lot of tokens and testing using Claude itself as the MCP invoker. submitted by /u/tritlo [link] [comments]
    Effect systems compared to object orientation
    Looking at example code for some effect libraries, e.g. the one in the freer-simple readme, I'm reminded of object orientation: {-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeOperators #-} import qualified Prelude import qualified System.Exit import Prelude hiding (putStrLn, getLine) import Control.Monad.Freer import Control.Monad.Freer.TH import Control.Monad.Freer.Error import Control.Monad.Freer.State import Control.Monad.Freer.Writer -------------------------------------------------------------------------------- -- Effect Model -- -------------------------------------------------------------------------------- data Console r where PutStrLn :: String -> Console () GetLine…
    Munihac 2025 :: Sept [12..14] :: Munich :: Registration open!
    submitted by /u/quchen [link] [comments]
    [JOB] 4x Haskell Engineer at Artificial
    TLDR We at Artificial are hiring four Haskell Engineers. Please apply here: https://artificiallabsltd.teamtailor.com/jobs/6071353-haskell-engineer About Artificial At Artificial, we're reshaping the future of the insurance industry. Our mission is to transform how brokers and carriers operate in complex markets by removing operational barriers and enabling smarter, faster decision-making. With over £26m funding secured to date, led by Europe’s premier publicly listed fintech fund, Augmentum Fintech, with participation from existing investors MS&AD Ventures and FOMCAP IV. Join us, and take the chance to be a part of something that will change the insurance landscape. Please note: this role is remote, but currently open only to applicants based in Estonia, Poland, Spain or the UK. Our…
  • Open

    renpy (20250618.1725) --- Major mode for editing Ren'Py files
    The renpy package has been updated to version 20250618.1725.
    zig-mode (20250618.1627) --- A major mode for the Zig programming language
    The zig-mode package has been updated to version 20250618.1627.
    py-vterm-interaction (20250618.1338) --- A mode for Python REPL using vterm
    The py-vterm-interaction package has been updated to version 20250618.1338.
    password-store (20250618.951) --- Password store (pass) support
    The password-store package has been updated to version 20250618.951.
    projectile (20250618.911) --- Manage and navigate projects in Emacs easily
    The projectile package has been updated to version 20250618.911.
  • Open

    Zettelkasten Proficiency Levels
    What learning a language taught me about building a second brain. Today I took an online test for „English as second language“. The test uses the popular CEFR standard (Common European Framework of Reference for Languages) for evaluation. The CEFR defines six levels of English proficiency: A1, A2, B1, B2, C1 and C2. These levels are widely accepted as the global standard for grading an individual’s language proficiency. I achieved a C1 level and was very proud. But what‘s the connection to Zettelkasten? My brain automatically transferred the phrase „English as a second language“ to „Zettelkasten as a second brain“. Why? I have no answer. However, my thoughts were heading in a new direction. What do these levels mean? Google showed me a list of related vocabulary: A1 - 500 words A2 - 1,000 words B1 - 2,000 words B2 - 4,000 words C1 - 8,000 words C2 - 16,000 words native speaker - 32,000 words It's a nice, non-linear function. The vocabulary at each level is double that of the level below. What might this list look like for a Zettelkasten user? My proposal: A1 - 500 ideas A2 - 1,000 ideas B1 - 2,000 ideas B2 - 4,000 ideas C1 - 8,000 ideas C2 - 16,000 ideas native Zettelkasten user - 32,000 ideas On the CEFR scale, you are expected to have a reasonable degree of fluency at B1 level, which should improve further up the scale. How many ideas do I have in my vault? Let's take a look: 1,606 permanent notes. According to my newly created CZFR standard (Common Zettelkasten Framework of Reference for Second Brains), this is an A2 level. Wow! According to CZFR, I need less than 400 ideas to reach my B1 level. I’m very excited.  ( 4 min )
  • Open

    Industry Scala
    Over the decade I've been a happy Scala user. Interesting innovations, standard library pretty good and a ever evolving eco system However the past years the negativity started to grow on some experiences and also on team members. Scala usage has been an absolute decline in the Netherlands. A few years ago several companies were using it, but now most of them moved away to Java or Kotlin There are a lot of eco systems and fragmentation which doesn't bring the wonderful stuff of Scala together. I am not in the power to get this moving, but I might plant a seed :) I've posted this awhile ago before: - There have been consistent complains about the IDE experience, IntelliJ not as good as for Kotlin that needs to be improved - The Cloud Native experience (tracing, metrics, etc) is there, but it's hard to put everything together. E.g. OpenTelemtry trace which enters via Tapir, runs in a ZIO program which uses Doobie (which might run with otel4s) - It's hard for developers to start a new project with all the new best libraries, ZIO/Kyo and then Tapir, Skunk, etc. Some starter templates might work ? - The standard library could use more regular updates, for example Google Go has Json in the standard library which is mitigated for CVE's. In Scala you either need to switch to a new JSON library or live with CVE's in your codebase - I like the idea of "industry" Scala, where Scala LTS and a set of libraries are also LTS. Crucial blocks would be zio, typelevel and softwaremill ecosystems for example - It would be great that these eco systems are tested constantly for CVEs or got a level of maintenance like Go/Microsoft for a long term and guaranteed Just my two cents, hopefully Scala can be saved! submitted by /u/Entire-Garage9994 [link] [comments]

  • Open

    lsp-mode (20250617.2256) --- LSP mode
    The lsp-mode package has been updated to version 20250617.2256.
    org-gcal (20250617.1626) --- Org sync with Google Calendar
    The org-gcal package has been updated to version 20250617.1626.
    flymake-elisp-config (20250617.1622) --- Setup load-path for flymake on Emacs Lisp mode
    The flymake-elisp-config package has been updated to version 20250617.1622.
    gnosis (20250617.1224) --- Spaced Repetition System
    The gnosis package has been updated to version 20250617.1224.
    tempel (20250617.1222) --- Tempo templates/snippets with in-buffer field editing
    The tempel package has been updated to version 20250617.1222.
    polymode (20250617.1033) --- Extensible framework for multiple major modes
    The polymode package has been updated to version 20250617.1033.
    kotlin-ts-mode (20250617.843) --- A mode for editing Kotlin files based on tree-sitter
    The kotlin-ts-mode package has been updated to version 20250617.843.
  • Open

    Any use for a batteries-included Rails or Devise-like full-stack web application framework on Http4s and cats?
    I’ve got user registration, password reset, account verification, etc. (basically Rails’ Devise) working with stateless session management on an Http4s skeleton. Haven’t seen anyone open source anything similar and try to build a Rails or Devise-like community around it, though. Is this a common enough set of problems in Scala that having an open source project would be of help to anyone? I’m considering bolting on ScalaJS next. submitted by /u/PureCauliflower6758 [link] [comments]
    A forest fire simulator written in Rust and Scala !
    submitted by /u/Lower_Confidence8390 [link] [comments]
    How to print field names in case class toString?
    I want Foo(name = "foo") not Foo("foo") submitted by /u/steerflesh [link] [comments]
    Serialization Framework Announcement - Apache Fury is Now Apache Fory
    submitted by /u/Shawn-Yang25 [link] [comments]
  • Open

    [RFC] Draft publication of `stm-trie`, a concurrent trie - comments/questions wanted
    submitted by /u/ephrion [link] [comments]
    Why I'm writing a Redis client package
    submitted by /u/magthe0 [link] [comments]
    [ANN] GHCi for LuaTeX
    I'm releasing ghci4luatex, a minimalist tool that allows to run a GHCi session within a LaTeX document using LuaTeX. It can be used in conjunction with lhs2tex, and I also added a Visual Studio recipe for the LaTeX Workshop. Usage The ghci environment evaluates haskell code without printing anything : ```latex \begin{ghci} x :: Int x = 4 y :: Int y = 5 \end{ghci} ``` The hask command evaluates any ghci command and prints in Haskell what GHCi printed : latex The sum of $x$ and $y$ when $x = \hask{x}$ and $y = \hask{y}$ is $\hask{x + y}$. You can use HaTeX, or any package you want by simply adding it to package.yaml: ```latex \begin{ghci} :set -XOverloadedStrings \end{ghci} \begin{ghci} import Text.LaTeX \end{ghci} \hask{printTex (section "A section using HaTeX")} ``` How it works This is simply a minimalistic TCP server that runs a GHCi process that is called by Lua. submitted by /u/AliceRixte [link] [comments]
    Haskell Software Engineer job opportunity
    Hi everyone, Not sure if this is the right place to share this, but there's a new opportunity as a Haskell Software Engineer, have a look! Location: Utrecht, the Netherlands https://jobs.channable.com/o/haskell-software-engineer-3-4 submitted by /u/ioap [link] [comments]
    A bit of game code
    Just a simple "game" to show a basic choice system I've been working on: {-# LANGUAGE OverloadedStrings #-} import Text.Read (readMaybe) -- The core Dialogue monad data Dialogue s o a = Return a | Choice s (o -> Dialogue s o a) instance Functor (Dialogue s o) where fmap f (Return a) = Return (f a) fmap f (Choice s cont) = Choice s (fmap f . cont) instance Applicative (Dialogue s o) where pure = Return Return f d = fmap f d Choice s cont d = Choice s (\o -> cont o d) instance Monad (Dialogue s o) where return = Return Return a >>= f = f a Choice s cont >>= f = Choice s (\o -> cont o >>= f) -- The interpreter runDialogue :: (Show s, Read o) => Dialogue s o a -> IO a runDialogue (Return val) = return val runDialogue (Choice s cont) = do putStrLn $ show s input runDialogue (cont o) Nothing -> do putStrLn "Invalid input. Try again." runDialogue (Choice s cont) -- Example dialogue myFirstDialogue :: Dialogue String Int String myFirstDialogue = Choice "Choose 1 or 2:" $ \choice -> case choice of 1 -> Return "You chose wisely." 2 -> Return "You chose... less wisely." _ -> Return "That's not even a choice!" main :: IO () main = do result <- runDialogue myFirstDialogue putStrLn $ "Result: " ++ result submitted by /u/NerdyRodent [link] [comments]
  • Open

    catalina legacy
    is there still a catalina version? thanks  ( 2 min )
  • Open

    :tangle no on code block is not tangled, but still loaded.
    The code in a code block with :tangle no is correctly not tangled, but code is still loaded and cannot figure out why. I set (setq package-enable-at-startup nil) in early-init, but this makes no difference. Is this some autoload mechanism perhaps? Any help appreciated. submitted by /u/art_else [link] [comments]
    Orgmode integration with Linear.app
    Hi, everyone. At work, I'm required to use Linear.app. I'd rather use orgmode, but I don't get to be picky, so I made a Linear/Emacs integration. If you think it may help you, feel free to use it at https://codeberg.org/anegg0/linear-emacs, or https://github.com/anegg0/linear-emacs. It allows you to manage Linear issues as orgmode todos. Of course, feedback and contributions are appreciated, especially as this integration has only been tested with Doom! submitted by /u/EasierThanTheyThink [link] [comments]
  • Open

    Fun with GPTel: ob-gptel integration with Org-babel
    Thanks to some late night pairing with Karthik (author of GPTel), I'm now able to announce that ob-gptel is available and working nicely for all my tests thus far. Some features: Use a #+begin_src gptel block to provide a user prompt to submit to GPTel. Refer to previous named source blocks using :prompt, which will use the content and result in the user and assistant roles. This is optional. Set the :dry-run t header to see what will be sent, to help with debugging. See the README for more headers available. Works great with presets! Thanks to Karthik, full completion support is available if configured (see README). Your prompt block is submitted to GPTel asynchronously, with the result filled in once it arrives from the LLM. If you use the :wrap src header, for example, and the output from the LLM is code in that language, then you can continue the fun by sending that to Org-babel! This makes it possible to accelerate your literate DevOps work by having GPTel generate the commands in-line with your document that uses them. Please let me know of any issues or feature requests through the GitHub issues list! submitted by /u/jwiegley [link] [comments]
    How to Manage Package Archive Priorities Properly
    I've seen online that you can use package-archive-priorities to change it, but I'm not sure how to use that properly. What I want is this- when installing a package, Emacs will first try GNU Elpa. If the package isn't there, move on to Non-GNU Elpa. If it's still not there, try Melpa. And it should keep these priorities regardless of which repo has a higher version of a package. And my current setup is this: emacs-lisp (setopt package-archive-priorities '(("gnu" . 10) ("nongnu" . 5) ("melpa" . 0) Is this correct for what I want? I'm not sure what numbers to put and what the numbers actually mean. submitted by /u/ever-ella77 [link] [comments]
    Tips for setting up eglot lsp for java
    I seriously don’t understand how to do this. Sometimes it works, sometime it doesn’t. Do you have any advice? submitted by /u/kranii [link] [comments]
    Send Link/Text to Karakeep
    Hihi 👋 I made this code with the help of some artificial sweetener to send org-mode links or marked text directly from emacs to Karakeep. Maybe it'll help some people? Anyway, keep in mind that I'm not a coder at all and I just wanted something that works. You'll have to change your IP/domain/port and put in an API code that you make in Karakeep. I marked them pretty clearly near the top of the code so you shouldn't miss it. I just dropped it in my emacs scripts folder and used (provide) in my init for it to load. https://github.com/summeremacs/SendToKarakeep/blob/main/karakeep-send.el That is all. Please resume with your regularly scheduled mayhem. 🙃 submitted by /u/summeremacs [link] [comments]
    elisp-dataset: A dataset of Emacs Lisp examples for fine-tuning LLM
    I would like to share with the community the elisp-dataset. It is a dataset of Emacs Lisp examples that can be used for fine-tuning LLMs. Each example is crafted with a natural language instruction and an associated function implementation. This project has two main goals: To help models better understand and generate idiomatic elisp code when given high-level tasks. To increase the usefulness of the local fine-tuned LLMs in the user workflows. Emacs Lisp is a niche language, therefore the first goal of this project is to increase the proficiency of the LLMs with the Emacs Lisp language. The privacy aspect and the cost-wise advantages of the local LLMs cannot be overstated. Therefore, the second goal of the project is to help users take advantage of the local LLMs and preserve privacy while cutting personal costs. The dataset is in the Org format, and there is a utility to convert the Org format to JSON format. If you have any interesting code examples that you might want to contribute, please feel free to do so. Here are the repos: GitLab : https://gitlab.com/asfaragus/elisp-dataset GitHub : https://github.com/asfaragus/elisp-dataset Thank you very much and happy Emacs-ing! submitted by /u/Asfaragus [link] [comments]
    Fortnightly Tips, Tricks, and Questions — 2025-06-17 / week 24
    This is a thread for smaller, miscellaneous items that might not warrant a full post on their own. The default sort is new to ensure that new items get attention. If something gets upvoted and discussed a lot, consider following up with a post! Search for previous "Tips, Tricks" Threads. Fortnightly means once every two weeks. We will continue to monitor the mass of confusion resulting from dark corners of English. submitted by /u/AutoModerator [link] [comments]
    Costs with gpt-el and other emacs AI interfaces
    Hi everyone. Just wondering how much you people are spending using gptel or other tools like aider with emacs. Also which strategies are you using to reduce the costs or use free quotas too. Thanks in advance submitted by /u/Ok-Alternative3457 [link] [comments]

  • Open

    Need help understanding LSP and ccls
    I have a file 2-TouchTest.cpp that compiles and runs successfully but it is likely still needing some include files to really be correct C++. A function is calling Serial.print("Pressure = "); but there are two !! in front and it says no matching member function for call to 'print'. When I ask to find the definition for Serial via s-l g g (lsp-find-definition) it takes me to a header file where Serial is defined as HardwareSerial which has a subclass of Stream which has a subclass of Print which has these prototypes for print: size_t print(const __FlashStringHelper *ifsh) { return print(reinterpret_cast(ifsh)); } size_t print(const String &); size_t print(const char[]); size_t print(char); size_t print(unsigned char, int = DEC); size_t print(int, int = DEC); size_t print(unsigned int, int = DEC); size_t print(long, int = DEC); size_t print(unsigned long, int = DEC); size_t print(long long, int = DEC); size_t print(unsigned long long, int = DEC); size_t print(double, int = 2); size_t print(const Printable&); size_t print(struct tm * timeinfo, const char * format = NULL); When I click on the call to print, the prototype is size_t print(long, int = DEC). Clearly I have something set up wrong but I don't know what it is. I didn't know if this is a LSP problem, a ccls problem, or an Emacs problem but I thought I would try here first. Edit: It appears this is probably a flymake issue. The LSP and ccls is working fine. The errors I am seeing are coming from flymake. I'll look into how better to set it up but would love help if anyone wants to chime in. submitted by /u/pedzsanReddit [link] [comments]
    imenu with go-mode
    Hey folks, Using eglot + vertico + consult + marginalia here. One thing that I noticed is that imenu (and consult-imenu) shows only names of symbols for go-mode (and go-ts-mode). Not much else. imenu entries for Elisp code on other hand look great -- properly categorized by types, variables, functions, etc. And they also have docstrings. Anyone managed to get {consult}-imenu for go-mode to resemble what the imenu for Elisp looks like? In case someone got it working, please share your imenu-generic-expression for go-mode (or any other hints you might have) :) submitted by /u/dnaeon [link] [comments]
    ordered-set.el: library for insertion-order sets, now on MELPA
    I had some need for sets that kept the insertion order, so a while ago I wrote this library that combines a hash table (providing constant lookup) and a list (providing order) to provide them. A lot of this is inspired by JavaScript's sets, which are exactly like this (insertion-order once-only collections). Example: (defun my-own-uniq (sequence) "Return a list of elements of SEQUENCE without duplicates." (let ((my-set (ordered-set-create))) (dolist (it sequence) (ordered-set-add my-set it)) ;; Entries will be deduplicated (ordered-set-lst set))) The API should be similar to JavaScript sets, but the seq.el interface is also implemented; I hope this can be useful to people! submitted by /u/kisaragihiu [link] [comments]
    How can I see Emacs debug logs in the terminal?
    When Emacs GUI is hung, I have no way to see the error messages. Isn't there something that will show the logs in the terminal? Running it with --debug-init does not show me anything. Doom Emacs does it somehow. How to do the same in plain Emacs? submitted by /u/signalclown [link] [comments]
    Does TRAMP not work with servers that use fancy prompts?
    I'm using powerline on my remote server to generate the prompt. When I try opening a remote file with tramp, it completely hangs my Emacs. I don't know how to even debug this because there's nothing shown when I start Emacs with --debug-init. I've also tried starting it with just -Q and the result is the same. It works fine if I disable powerline. There was a post about a similiar issue 2 years ago, also without a solution and it looks related to my issue. Is this something that has a workaround as a configuration change or is it just broken? I have tried this but no luck: (setq tramp-remote-shell "/bin/bash") (setq tramp-remote-shell-args '("--norc" "--noprofile" "-i")) submitted by /u/floofcode [link] [comments]
    Completely new to emacs
    Hello, I've been "on the other side" (vim and now neovim) for about 20 years now. I somehow never even attempted to use emacs, though I am well aware that is is an incredibly powerful piece of software. So to make a long story short, I challenged myself to daily drive it for a month - without evil mode, which I've found out about online. My question for any experienced users willing to answer is this: where to start? How to start? I'm working my way through the tutorial and I started emacs as a service. What's next? I should mention I have 0 experience with lisp but I'm sure I'll figure it out. Thank you submitted by /u/Informal-Silver-2810 [link] [comments]
  • Open

    pubsub (20250616.2221) --- A basic publish/subscribe system
    The pubsub package has been updated to version 20250616.2221.
    magit (20250616.1817) --- A Git porcelain inside Emacs
    The magit package has been updated to version 20250616.1817.
    pass (20250616.1457) --- Major mode for password-store.el
    The pass package has been updated to version 20250616.1457.
    gnus-desktop-notify (20250616.816) --- Gnus Desktop Notification global minor mode
    The gnus-desktop-notify package has been updated to version 20250616.816.
    thrift (20250616.310) --- Major mode for fbthrift and Apache Thrift files
    The thrift package has been updated to version 20250616.310.
    migemo (20250616.309) --- Japanese incremental search through dynamic pattern expansion
    The migemo package has been updated to version 20250616.309.
    nerd-icons (20250616.200) --- Emacs Nerd Font Icons Library
    The nerd-icons package has been updated to version 20250616.200.
    bufferfile (20250616.158) --- Rename/Delete/Copy Files and Associated Buffers
    The bufferfile package has been updated to version 20250616.158.
    sql-impala (20250616.110) --- Comint support for Cloudera Impala
    The sql-impala package has been updated to version 20250616.110.
  • Open

    Broken Link on Haskell.org
    https://preview.redd.it/tq45b18wec7f1.png?width=1608&format=png&auto=webp&s=a10c78248b43e9d507c7ecc0bd3842a895b80bda the "Learning Haskell" link (learn.hfm.io) shows that the Domain has expired. Can this be removed or replaces? Haskell.org page link: https://www.haskell.org/documentation/ submitted by /u/kichiDsimp [link] [comments]
    Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'
    submitted by /u/philip_schwarz [link] [comments]
    HLS is very slow ?
    I did an experiment I created a new module Utils.hs inside src/ folder but in the top of the file I named it module Ut where the error was shown that module Name must be same as file name than when I typed module Uti where the error was gone. I had to restart the HLS server, so the error was visible. It takes it a minute or so, or it hangs, whenever I add or remove changes in .cabal file, the auto-completions come so late. Is it VSCode problem or HLS? I use VSCode and HLS version 2.10.0 submitted by /u/kichiDsimp [link] [comments]
    [Well-Typed] Making GHCi compatible with multiple home units
    submitted by /u/adamgundry [link] [comments]
  • Open

    Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'
    https://fpilluminated.org/deck/264 submitted by /u/philip_schwarz [link] [comments]
    ArrayView - pure Scala library for efficient multidimensional tensors
    Hi! I've created a lightweight library for working with multidimensional tensors in Scala 3. ArrayView provides numpy-like syntax for manipulating arrays with efficient memory usage - views share the same underlying data array and only copy when necessary. It supports up to 4D tensors, handles primitive types without boxing, and has zero external dependencies. Check it out on GitHub: ArrayView Licensed under MIT - feedback and contributions welcome! submitted by /u/kr1ght [link] [comments]
    4 Fundamental Concurrency Patterns in Scala with Cats Effect — Mutex, Semaphore, Barrier, Latch
    I recently revisited some low-level concurrency patterns — not something I use daily, but useful for interviews or the occasional tricky edge case. I wrote a short blog post to summarize the basics with minimal runnable examples in Scala + Cats Effect. Thought it might be helpful to others as a refresher or quick prep. Covers: Mutex (for exclusive access) Semaphore (limit parallelism) CyclicBarrier (wait for all) CountDownLatch (wait for a signal) 👉 https://lukastymo.com/posts/022-concurrency-basic-synchronization/ submitted by /u/lukastymo [link] [comments]
    dotty-cps-async 1.1.2 is out
    //Macro library, which implements {async/await, reflect/reify, unlift/lift} via cps-transform and allows developers to use direct control flow constructions of the base language instead of a monadic DSL with any monad. // The main change is the support for shifting extension methods (thanks to GitHub/@ahoy-jon for the suggestion), and as a side effect, full support for methods with SIP-47 interleaved parameters and type-parameters clauses. Url, as usual: https://github.com/dotty-cps-async/dotty-cps-async submitted by /u/rssh1 [link] [comments]
  • Open

    Looking for good videos on how to build a physical zettelkasten from scratch
    I'm looking for some simple video tutorials on building a physical zettelkasten from scratch. Something that explains the basics - as well as doing the foglezettel thing. I just finished reading Bob Dotos book, and I'd love some video tutorials that have his book / process in mind if possible. Right now I'm a little overwhelmed because I only have a few reference note cards filled out. I haven't filled out any main notes yet. Thanks! Antonio  ( 2 min )
    What's up in your Zettelkasten, week 2025-06-16
    👋 It's a new week, hello! I'm not @Will so I won't attempt to open with inviting words like he does. Share with the community what's going on in your life as a Zettler: Life: What happened last week, what is up this one? Zettelkasten: Share your Zettel! Which did you produce? What are your highlights? Reading: What are you reading at the moment? Is it any good?  ( 2 min )

  • Open

    Tree-sitter claims my C grammar version is wrong
    I'm using Emacs 30.1 on MacOS. I've both installed the C grammar using treesit-install-language-grammar and also by grabbing the repo and makeing it and then copying the dylib over to the ~/emacs.d/tree-sitter directory. I've installed both in the base directory and also in the tree-sitter/grammars/c directory. I keep getting this, no matter what ⛔ Warning (treesit): Cannot activate tree-sitter, because language grammar for c is unavailable (version-mismatch): 15 I don't seem to be having the same problem with the C++ version. I guess to a certain extent it doesn't matter; I'm really only going to be using c++, but this is still somewhat infuriating. Any help? submitted by /u/vjgoh [link] [comments]
    Fun with GPTel: gptel-prompts
    I've been using GPTel a lot lately, for many different tasks, and wanted to start sharing some of the packages I've built on top of it to aid my work. The first of these is gptel-prompts, which lets you define entries for gptel-directives using individual files instead of Lisp. Several types of files are supported: Plain text files (Org, Markdown, Text) that correspond to string directives. Emacs Lisp Data files (.eld), which correspond to Lisp lists (see the docstring for gptel-directives for more information). Emacs Lisp Functions (.el), which must evaluate to a function that, when called, returns a string or a list as above. And files in Prompt Poet format (.poet), which is a Yaml format for modelling user/assistant interactions, with optional additional support for Jinja-style templating. It's a pretty simple module right now, since it's aims to only do one task well, but it does offer a few additional niceties: Optionally using filenotify to update directives whenever the file changes; and support for project-specific system prompts, such as those supported by Claude Code, etc. Next up in a few days will be ob-gptel, an Org-babel backend that makes GPTel available via source blocks in any Org file — not just chat files — but this needs a bit more testing and documentation before I announce further. submitted by /u/jwiegley [link] [comments]
    What are the different ways (good and bad) to use namespaces with Elisp functions and macros?
    After looking at other people's code, I came to realize function names and macros can have special characters. I see Doom using functions/macros like package! +advice, etc. I see some other people name them custom/function-name, I see others doing my/function-name. I don't know if some characters are worse than others (for readability sake). For example, I was thinking about using +package as a macro but don't know if this conflicts/confuses with something. I see that the > character is not allowed. What other interesting ways to name functions exist in Elisp that I might have not seen? I'm writing a package and looking for a naming convention to stick with, but because I don't have much experience writing Elisp, I'm not so sure what is elegant and ugly. submitted by /u/surveypoodle [link] [comments]
    Is there any good reason to NOT use native compilation?
    I'm reading that native compilation makes debugging harder, and has minimal improvement on startup times. I don't have any issues with my current set of packages so I don't think I need to do any debugging as such, so I'm thinking is there any other reason why I might not want native compilation? submitted by /u/floofcode [link] [comments]
    Move headings up and down in markdown?
    Hi there, I'm trying to write my text in markdown, and I miss terribly the M-UP (org-move-subtree-up) M-DOWN (org-move-subtree-down) functionality of org-mode. I'm in markdown-mode. Any hint on how to achieve this? submitted by /u/federvar [link] [comments]
    Im lost
    Im new to using emacs, and i installed and read the tutorial, learn the motions and i like it so much So i wanna migrate of using vscode to emacs but I really miss autocomplete and I don't know if it's possible on emacs, apart from customization etc. which I don't know how it works, I need a north submitted by /u/Synapsyyy [link] [comments]
    What's a package / feature you use to try stuff while hacking?
    submitted by /u/redmorph [link] [comments]
    doom-two-tone-themes: Visual harmony through constraint - 12 carefully crafted themes for Doom Emacs
    I've been working on a theme collection based on the philosophy that constraint breeds creativity. Instead of using dozens of colors that compete for attention, each theme in this collection uses exactly: 2 main colors for syntax highlighting (closely related tones) 1 accent color for strings and comments This creates visual harmony while reducing cognitive load - your brain can focus on code, not colors. The Collection (so far) 6 Dark Themes: doom-navy-copper - Nautical sophistication doom-burgundy-rose - Wine bar luxury doom-purple-gold - Royal elegance doom-silver-slate - Brushed metal aesthetic doom-cyan-charcoal - High-tech futuristic doom-orange-grey - Warm minimalism 6 Light Themes: doom-dusty-steel - Calming professional blues doom-warm-charcoal - Minimalist…
    Do you think it's worth publishing this theme?
    https://preview.redd.it/h30ebm7up17f1.png?width=1850&format=png&auto=webp&s=bc5eb6415574e2dbc8c468bffc06a964433b2a56 I created this theme and found myself using it quite a lot, so I thought I'd check up if this appeal to anybody else, if so, I'll create a theme package for it :) submitted by /u/IAFalcon [link] [comments]
    Roulette calculator package for pro gamblers
    https://github.com/LemonBreezes/roulette-calculator Hi everyone. I vibe-coded a roulette simulator for my own gambling purposes since the ones I found on the web were garbage. Down the line I might do Blackjack. I like how this package turned out quite a bit. https://preview.redd.it/t2a01dl2k17f1.png?width=2560&format=png&auto=webp&s=158613e53bf9aca7c10f5a3d0c02b08634703d36 submitted by /u/LemonBreezes [link] [comments]
    How do you structure your Emacs configuration for easier maintainability?
    Emacs allows you to append to your load-path, so you can have multiple configuration files, but most of the time when I look at someone's config, it's just one giant config file. I'm wondering about keeping separate files for cosmetic changes, navigation, package-specific or language-specific configurations, etc. Perhaps something like: ├── appearance.el ├── bindings.el ├── core.el ├── early-init.el ├── hooks.el ├── init.el ├── lang │ ├── c.el │ ├── go.el │ └── python.el ├── macros.el ├── navigation.el └── overrides ├── magit.el └── treemacs.el Really curious if anyone maintaining some structure similar to this so I can improve on this. submitted by /u/signalclown [link] [comments]
    How did you become an emacs power user?
    submitted by /u/Cultural_Mechanic_92 [link] [comments]
    What is it about Emacs that makes it so hard to evangelize it?
    Part of the reason why I switched from Vim to Emacs a long time ago was my belief in the viability of Emacs Lisp being more stable in the long run. Even though I didn't know any Lisp at the time, I thought of Emacs Lisp as something I might want to, even though I didn't really know anything about it at the time. It paid off, because I ended up being able to do customizations in Emacs that I had previously found a bit cumbersome to do in Vim or Neovim. Emacs keybindings are already there in the default shell, and we even have a prophet. Yet one community vastly outnumbers the other one. I get that Emacs itself is kind of a niche thing, but I'm wondering what is it that people find more appealing in the other editors than Emacs. submitted by /u/birdsintheskies [link] [comments]
    Besides cosmetic improvements, what advantages does Emacs GUI have over Emacs in a terminal?
    Coming from the Vim and Neovim universe and working primarily over SSH, I was more used to running it in the terminal. Even when I used it on my local machine, I was still running it in a terminal, mostly because the GUI version looked fugly and didnt seem to do anything that I couldn't do in the terminal already. Now that I'm in the Emacs universe, I disabled the menubar, etc. and there isn't any visible difference between the GUI and TUI. Besides some basic improvements like clipboard integration, etc. does the the GUI have any other actual advantages or is it just to make it prettier? submitted by /u/birdsintheskies [link] [comments]
    Is there a use for the C/H Dired marks that are attached to files that you copy/hardlink?
    I've long noted that when I copy a file from one Dired buffer to another, the files are given a C mark in the destination buffer. More recently I've been hard-linking files sometimes instead of copying them, and in that case they get an H mark in the new buffer. I have not yet happened upon a use for these marks, and I tend to remove them immediately with * ! because they're distracting. Before I go looking for a way to disable them, can anyone suggest a good use for them? submitted by /u/sauntcartas [link] [comments]
    Unable to add-to-list
    I am having a problem: when I try to add my present-working-directory variable to my dirs list, I get a wrong argument error. What im seeing is that apparently, present-working-directory is actually a lisp of strings, the strings being the names of every file and directory in my home directory. However, when I run (message "%s" present-working-directory) instead of the add-to-list function, I get output as a string. I have tried solving this by doing (add-to-list 'dirs (format "%s" present-working-directory)), but this results in the same error. Can anyone give me a hint as to why this happens? Heres my code: (defvar present-working-directory nil) (defvar dirs (list ())) (defun init () (setq present-working-directory (read-string "please enter a directory: " (getenv "HOME"))) (unless (file-directory-p present-working-directory) (error "that is not a path to a directory")) (add-to-list 'dirs present-working-directory)) EDIT: Found out that the reason this wasnt working is because emacs stores variables(the way I was executing this code was by using eval-buffer), and I had stored some junk value from before writing this code out. submitted by /u/SergioWrites [link] [comments]
    Eldoc (undesirably) shifting my line height?
    As you can see, with eldoc-mode turned on, my line height seems to change for the line my cursor is on as soon as the eldoc text appears in the mini buffer. Turning eldoc-mode off makes this stop. Any potential leads? submitted by /u/True-Sun-3184 [link] [comments]
    A little side project called 'ProEmacs'
    Hey r/emacs! Just pushed a major update to ProEmacs - my modular Emacs configuration focused on modern development workflows. What makes it different Fast & Simple - Sub-second startup times - Clean modular architecture - Spacemacs/Doom-like UX without the complexity Key Features AI Coding Assistant - Local DeepSeek-R1 with "thinking mode" to see AI reasoning Docker Integration - Manage containers directly from Emacs Modern Search - Consult + Vertico for blazing fast fuzzy search Performance Focus - Optimized GC, lazy loading, native compilation 15+ Doom Themes - Quick theme switching with modern UI Evil Mode - Proper setup with comprehensive keybindings Quick Start ```bash git clone https://github.com/sirjoaogoncalves/ProEmacs ~/.emacs.d emacs For AI features (optional) ollama pull deepseek-r1:8b-0528-qwen3-q4_K_M ``` Repo: https://github.com/sirjoaogoncalves/ProEmacs Looking for feedback, suggestions, or just curious about specific implementation details! submitted by /u/sirjoaogoncalves [link] [comments]
  • Open

    password-generator (20250615.2300) --- Password generator for humans. Good, Bad, Phonetic passwords included
    The password-generator package has been updated to version 20250615.2300.
    alert (20250615.1845) --- Growl-style notification system for Emacs
    The alert package has been updated to version 20250615.1845.
    gpt (20250615.1811) --- Run instruction-following language models
    The gpt package has been updated to version 20250615.1811.
    diredc (20250615.1518) --- Midnight Commander features (plus) for dired
    The diredc package has been updated to version 20250615.1518.
    tree-sitter-langs (20250615.1446) --- Grammar bundle for tree-sitter
    The tree-sitter-langs package has been updated to version 20250615.1446.
    helm-ls-git (20250615.1418) --- The git project manager for helm
    The helm-ls-git package has been updated to version 20250615.1418.
    test-cockpit (20250615.1258) --- A command center to run tests of a software project
    The test-cockpit package has been updated to version 20250615.1258.
    vertico (20250615.1208) --- VERTical Interactive COmpletion
    The vertico package has been updated to version 20250615.1208.
    pg (20250615.1144) --- Socket-level interface to the PostgreSQL database
    The pg package has been updated to version 20250615.1144.
    nov (20250615.1051) --- Featureful EPUB reader mode
    The nov package has been updated to version 20250615.1051.
    swift-mode (20250615.1001) --- Major-mode for Apple's Swift programming language
    The swift-mode package has been updated to version 20250615.1001.
    flymake-perlcritic (20250615.802) --- Flymake handler for Perl to invoke Perl::Critic
    The flymake-perlcritic package has been updated to version 20250615.802.
    ordered-set (20250615.745) --- Insertion-order sets
    The ordered-set package has been updated to version 20250615.745.
    flycheck-eglot (20250615.619) --- Flycheck support for eglot
    The flycheck-eglot package has been updated to version 20250615.619.
  • Open

    Yet Another Scala 3 Migration Story
    submitted by /u/Krever [link] [comments]
    How do I create a new Mill project with Scala 3?
    What's the easiest way to start a mill project with Scala 3 and Scalafmt? submitted by /u/steerflesh [link] [comments]
    MiniClust: a lightweight multiuser batch computing system written in Scala
    MiniClust : https://github.com/openmole/miniclust MiniClust is a lightweight multiuser batch computing system, composed of workers coordinated via a central vanilla minio server. It allows distribution bash commands on a set of machines. One or several workers pull jobs described in JSON files from the Minio server, and coordinate by writing files on the server. The functionalities of MiniClust: A vanilla minio server as a coordination point User and worker accounts are minio accounts Stateless workers Optional caching of files on workers Optional caching of archive extraction on workers Workers just need outbound http access to participate Workers can come and leave at any time Workers are dead simple to deploy Fair scheduling based on history at the worker level Resources request for each job submitted by /u/elmariac [link] [comments]
    This week in #Scala (Jun 16, 2025)
    submitted by /u/petrzapletal [link] [comments]
    New to scala
    I'm a junior dev , have experience with Java . Currently Im being put into a project that has API development using Scala Play framework. Would really appreciate some advice as to how to go about learning this , never wrote a line of scala before . Thanks ! submitted by /u/Delicious_Pirate_810 [link] [comments]
  • Open

    [ANN] First release candidate for Stack 3.7.1
    You can download binaries for this pre-release now from Release rc/v3.7.0.1 (release candidate) · commercialhaskell/stack · GitHub . It should be available also via GHCup’s prereleases channel soon. Please test it and let us know at the Stack repository if you run into any trouble. If all goes well, we hope to release the final version in a couple of weeks. Changes since v3.5.1: Other enhancements: Bump to Hpack 0.38.1. The --extra-dep option of Stack’s script command now accepts a YAML value specifying any immutable extra-dep. Previously only an extra-dep in the package index that could be specified by a YAML string (for example, acme-missiles-0.3@rev:0) was accepted. Bug fixes: stack script --package now uses GHC’s -package-id option to expose the installed package, rather than GHC’s -package option. For packages with public sub-libraries, -package can expose an installed package other than one listed by ghc-pkg list . Work around ghc-pkg bug where, on Windows only, it cannot register a package into a package database that is also listed in the GHC_PACKAGE_PATH environment variable. In previous versions of Stack, this affected stack script when copying a pre-compiled package from another package database. On Windows, when decompressing, and extracting, tools from archive files, Stack uses the system temporary directory, rather than the root of the destination drive, if the former is on the destination drive. submitted by /u/mpilgrem [link] [comments]
    Introduction to competitive programming in Haskell
    submitted by /u/mttd [link] [comments]
  • Open

    Is there a better way of plotting math functions in Org?
    I'm studying math and so far I've learned a lot about latex for math, and now I feel the need to plot some graphs. I tried gnuplot and it works, but I found it a bit cumbersome to use, and the defaults are not so good (small and pixelized font, 1px lines, and so on). In org I also have to pass a lot of parameters: #+header: :file velocity_over_time_60t_t2.png #+header: :results output graphics #+begin_src gnuplot set xlabel "time" set ylabel "velocity" set xrange [-1:61] set yrange [-1:1000] # Add a label; adjust the coordinates (30, 400) to fit your plot set label "v(t) = 60t - t^2" at 30, 400 plot 60*x - x**2 title 'Velocity over time' #+end_src https://preview.redd.it/cxitkagej47f1.png?width=1141&format=png&auto=webp&s=9bdcd39f4a226a97206a624b4e40b7fa75cacb85 I wish there was something simpler like #+begin: plot :formula "60*x - x**2" :xrange ... :yrange ... :label ... #+end: [[file:plot_60x_x2.png]] # autogenerated That just worked ok by default. I know I could code it myself, I'm just wondering if there is a good lib for that? submitted by /u/AkaIgor [link] [comments]

  • Open

    [Survey] CVE-2025-1244: Are you on Emacs 30.1 or have security patches installed?
    https://strawpoll.com/e7ZJa31KPg3 Hello everyone. It's been 3 months since the release of Emacs 30.1 which fixed two code execution vulnerabilities with a CVE assigned to them. One of them is CVE-2025-1244, which I want to do a blog post on soon explaining how it works. All big distributions have either released Emacs 30.1 or published a version bump with security patches (for example, RHEL and Debian do). To my surprise, Ubuntu people have not published security releases for the LTS version (24.04), so you're expected to use snap or compile from source on that. As I do not know how common it is for people to do that, I've created a poll to get better insights on this. Feel free to share the link in other Emacs communities as well or let me know about any feedback (like, if it's still to early to publish vulnerability details). submitted by /u/wasamasa [link] [comments]
    Google AI Confuses Emacs Lisp for Common Lisp
    submitted by /u/arthurno1 [link] [comments]
    I wrote a simple and minimal emacs config for developement
    I've used a pretty bloated emacs config for long time now. However, i've came to realize that this bloat can slowen emacs, and developement with such config is bad. That is why I decided to specifically write this small, and minimal emacs config for developement with many convienient features, buitlin emacs features replacing packages like ido-mode to replace ivy, using no externl package manager, and doing it all in one early-init.el file under 50 lines, this is now perfect for programming. not only is it useful and looks good, it is purely functional and fast. here is the file if you need it , and please suggest any improvements to it, i might move it to my its own repo from my dotfiles later on. submitted by /u/ArkboiX [link] [comments]
    Annoying interaction between `copilot-mode` and `consult-buffer`
    I recently configured copilot-mode, and added it to prog-mode-hook. Annoyingly, copilot-mode starts its server the first time I run consult-buffer in any new emacs session; I'm guessing that consult needs to run prog-mode for some reason, even though the documentation for consult-preview-allowed-hooks would suggest that prog-mode hooks are suppressed in consult-buffer. Anyways, here's a workaround: (use-package copilot :hook ((prog-mode . r/copilot-mode-maybe) (markdown-mode . r/copilot-mode-maybe)) :bind ("C-" . copilot-accept-completion) :custom (copilot-idle-delay 0.5) :config (defun r/copilot-mode-maybe () "Hack for preventing copilot from starting when using consult-buffer" (when (not (minibufferp)) (run-with-idle-timer 0.1 nil (lambda (buf) (when (and (buffer-live-p buf) (with-current-buffer buf (get-buffer-window buf 'visible))) (with-current-buffer buf (copilot-mode 1)))) (current-buffer))))) It checks whether the current buffer is alive and actually visible before enabling copilot-mode. Now for the real question: Based on what I've described, who should I report this issue to, copilot-mode, or consult? submitted by /u/skyler544 [link] [comments]
    Potential vulnerability in lsp-booster's config
    https://github.com/blahgeek/emacs-lsp-booster/issues/39 TLDR: lsp-booster--advice-json-parse's (funcall bytecode) may enable arbitrary code execution by parsing JSON from anywhere, since the advice is applied globally to the JSON parsing function. I don't have experience in security. Attackers may not care much but IMO that's pretty easy to exploit if it's known that the user has lsp-booster on their Emacs. submitted by /u/daanturo [link] [comments]
    Selection face
    Hello! So I am working on an emacs package and it has a mode that has a menu, this menu has a selected text that I change the properties to be different from normal text. Problem? I dont know how to change the properties in a way that doesnt have the possibility of conflicting with the users theme. I am sort of at a loss as to what to do here, as anything that I try doing would just be hardcoding a face using defface which has the possibility of conflicting with a users theme. Does anyone have any ideas? submitted by /u/SergioWrites [link] [comments]
    Announcing aider.el 0.12.0, LLM work with flycheck, better magit integration, and better file management.
    1. New Features / Enhancement Contextual Code Assistance Tool Automatic fixing of Flycheck reported code errors with aider. (aider-flycheck-fix-errors-in-scope) Software planning / brainstorming based on given context (file, function, region) or all added files with user-defined goals. (aider-start-software-planning) Better file add / drop File completion for /drop command listing only added files. Ability to drop the file under cursor in aider comint buffer with C-c a O. Semi-automatic expansion of context via aider-expand-context-current-file to include current file and related dependencies/dependents. aider-add-module supports adding files with content matching given regex, to help batch add files matching given topic. Git Integration and Version Control Whole git repo…
  • Open

    overleaf (20250614.2227) --- Sync and track changes live with overleaf
    The overleaf package has been updated to version 20250614.2227.
    citar-denote (20250614.2046) --- Minor mode integrating Citar and Denote
    The citar-denote package has been updated to version 20250614.2046.
    org-node (20250614.1728) --- Fast org-roam replacement
    The org-node package has been updated to version 20250614.1728.
    powershell (20250614.1529) --- Mode for editing PowerShell scripts
    The powershell package has been updated to version 20250614.1529.
    doom-themes (20250614.958) --- An opinionated pack of modern color-themes
    The doom-themes package has been updated to version 20250614.958.
    otpp (20250614.44) --- One tab per project, with unique names
    The otpp package has been updated to version 20250614.44.
  • Open

    My experience migrating a PlayFramework app to Scala 3
    submitted by /u/tanin47 [link] [comments]
    Noob asking about CRYD + some misc questions.
    Newer to programming and my mentor decided to start me off with a project wherein the goal is to have the end user arrive at a landing page and then use CRUD options to add what we're referring to in this particular project as Contacts for the sake of example, with name and number and all that good stuff. The guy kinda fucked off on a vacation tho, so I'm asking here. 1). Is PostGres the best option for this kinda thing? 2). Are the any examples with comment lines explaining their thought process that i can look at? 3). Mostly unrelated, but how important are Lambda expressions generally? I'm mostly learning web stuff and he seemed pretty high on them. 4). Are there any opinions on this coursera course? Am I better off just buying a book and following along with that? www.coursera.org/learn/scala-functional-programming submitted by /u/RopeChance7171 [link] [comments]
    Suspension: the magic behind composability (or "The Kyo Monad")
    submitted by /u/fwbrasil [link] [comments]
    The Elements of Kyo - Interactively explore the codebase!
    submitted by /u/fwbrasil [link] [comments]
    Akka or Pecco (sp?)
    Hello all, I started with Scala 2.x and immediately fell in love with two key Scala libraries, the PEG parser and what was then Akka. I'd done some Erlang, but very little, and ASkka was Erlang without the pain. Still, there have been some changes, so now, what are the modern libraries for the modern world -- what is the parser library and do I use Akka or Pecco (spelling?) and why? And, the question that will no doubt get me in trouble -- I've tried Kotlin, and, OK, it's cool, but coroutines and channels don't seem quite the same as Akka in Scala. As I recall, Akka needs Scala to do its magic well -- any other language requires dark forces and byte code magic. Is Akka still cross platform enough that I can mix it with Kotlin? I have the luxury of doing a rewrite of the Kotlin code in Scala if I get enough bank for the buck in Scala 3? It's worth noting Scala 3 seems to be looking at things like Gears and Ox for even driven concurrency. What are people doing these days for concurrent and distributed programming -- Akka, Pecco, Gear/Ox with with some distributed library? submitted by /u/Rich-Engineer2670 [link] [comments]
  • Open

    Final poll for a new Cabal logo
    submitted by /u/Bodigrim [link] [comments]
    Starting with web applications in Haskell
    Hey o/! I already know some Haskell. I know even some Category Theory but i don't really know how web servers work and i would like to learn it in Haskell. My question is, there's some very good organized guide about it? Like "create your first web application with Haskell" or something? The Yesod book was not really for me, i guess :p. submitted by /u/Automatic-Ad9798 [link] [comments]
  • Open

    How to launch The Archive with a different directory, and with different set of saved searches
    This came up in a support email the other day: how do you work with different silos? Say you have 3 silos that shall not be mixed: Dogs Cats Work The following is a bit hacky. Please be careful! Don't run The Archive multiple times in parallel on different folders (which would be possible). They share settings! To maintain different contexts, you can whip up launch scripts that select the right folder and copy over context-specific settings for you. The saves searches sidebar is fully represented in this file: ~/Library/Application\ Support/TheArchive/saved_searches.plist So you need to set this up for your context, then make a duplicate. Set this up for "Dogs", then save a copy as saved_searches-dogs.plist. Set this up for "Cats", then save a copy as saved_searches-cats.plist. Set this up for Work, then save a copy as saved_searches-work.plist. Now you have 3 saved search sidebar configurations backed up. To 'restore' any of the configurations, replace saved_searches.plist (which is actually used by The Archive) with your context-specific copy. Then launch the app. How to tell The Archive to launch with a particular directory: https://forum.zettelkasten.de/discussion/2653/selecting-the-archive-directory-on-startup How to get the current archive folder (e.g. to back up saved_searches.plist to saved_searches-dogs.plist again based on the https://forum.zettelkasten.de/discussion/2574/how-to-get-the-path-to-the-archive Here's an example bash script to do this that you could store on your desktop as The Archive Dogs.command. Files with .command launch the Terminal app by default: #!/usr/bin/env bash # Replace sidebar with settings for Dogs cp "$HOME/Library/Application\ Support/TheArchive/saved_searches-dogs.plist" \ "$HOME/Library/Application\ Support/TheArchive/saved_searches.plist" # Launch app with ~/Documents/Notes/Dogs/ open -n /Applications/The\ Archive.app --args -archiveURL "file://$HOME/Documents/Notes/Dogs/" Repeat for Cats and Work.  ( 3 min )

  • Open

    ansible (20250613.2354) --- Ansible minor mode
    The ansible package has been updated to version 20250613.2354.
    polish-holidays (20250613.2245) --- Polish holidays
    The polish-holidays package has been updated to version 20250613.2245.
    diff-hl (20250613.2144) --- Highlight uncommitted changes using VC
    The diff-hl package has been updated to version 20250613.2144.
    erlang (20250613.1454) --- Major modes for editing and running Erlang
    The erlang package has been updated to version 20250613.1454.
    plantuml-mode (20250613.1438) --- Major mode for PlantUML
    The plantuml-mode package has been updated to version 20250613.1438.
    mcp-server-lib (20250613.1413) --- Model Context Protocol server library
    The mcp-server-lib package has been updated to version 20250613.1413.
    slime (20250613.1314) --- Superior Lisp Interaction Mode for Emacs
    The slime package has been updated to version 20250613.1314.
    gnuplot (20250613.1223) --- Major-mode and interactive frontend for gnuplot
    The gnuplot package has been updated to version 20250613.1223.
    kaolin-themes (20250613.1151) --- A set of eye pleasing themes
    The kaolin-themes package has been updated to version 20250613.1151.
    go-translate (20250613.937) --- Translation framework, configurable and scalable
    The go-translate package has been updated to version 20250613.937.
    org-hide-drawers (20250613.507) --- Hide drawers in Org using overlays
    The org-hide-drawers package has been updated to version 20250613.507.
  • Open

    Integration with Linear.app
    Hi, everyone. At work, I'm required to use Linear.app. I'd rather use org-mode, but I don't get to be picky, so I made a Linear/Emacs integration. If you think it may help you, feel free to use it at https://codeberg.org/anegg0/linear-emacs. Of course, feedback and contributions are appreciated, especially as this integration has only been tested for Doom! submitted by /u/EasierThanTheyThink [link] [comments]
    EasySession - Emacs: persist and restore sessions, including buffers, indirect buffers/clones, Dired buffers, window layouts, the built-in tab-bar, and Emacs frames (Release: 1.1.4)
    submitted by /u/jamescherti [link] [comments]
    Testers wanted for macher - project-aware multi-file editing with gptel
    Hi Emacser, I've just published my inaugural elisp package: https://github.com/kmontag/macher Lately I've seen a number of excellent: Emacs-native tools for things like LLM code completion and region refactoring - but as far as I've seen they're all focused on making edits to a single file or buffer. integrations with external tools like Aider that can handle more complex project-level edits - but these are a bit heavyweight for my taste. standardized editing and context toolsets like the filesystem MCP server - but I want a clean and flexible workflow for reviewing/revising changes before writing them to disk. macher scratches an itch that I've had for a while, namely a lightweight Emacs/gptel-native way to implement features in the project as a whole, pulling in context as necessary and making edits to multiple files. The LLM gets a set of tools to edit in-memory copies of files in the current project, and changes are displayed at the end in a simple diff-mode-compatible patch buffer that you can handle however you like. I've been using it myself for some time, mostly with Anthropic models, and really liking the results. In principle it should work with any gptel backend/model that supports tool calls. Please give it a try if it piques your interest, feedback welcome. submitted by /u/pshyouare [link] [comments]
    Rebinding Emacs to "modern" shortcuts
    Just a curiosa and discussion: This "modern" vs "vanilla" Emacs discussion, pops up like every few months or weeks. There is one as of yesterday. I also remember one last year, and I remember I wrote a small experiment, which I just found if someone would be interested to take it and hack on it, the link at the end of this writing. To start with, those interested to produce a "modern" Emacs with CUA bindings as in other editors, but without using CUA-mode, would have to rebind most of the keys. For that, they have to solve the problem of other editors typically not having prefix keys. For most basic operations other editors usually use single modifier + key, while Emacs uses the typical CUA keys, notably C-x and C-c as prefix keys. Prefixes are basically just multiple modifier+key acting…
    Any Augment AI agent users?
    I started at a new company and i'm "forced" to use VScode because of neat integrations with Augment and CodeRabbit AI assistants. submitted by /u/manojm321 [link] [comments]
  • Open

    How do you add the state monad to a sudoku game?
    I've been trying (and failing) to figure out how to use the state monad. I've looked at several explanations and I still don't get why the state monad contains a function instead of a value, and why functions like get don't take an argument and just return something. I decided to make a sudoku game and try to implement the state monad for it, but I can't figure that out. I made the sudoku game and uploaded it here. How exactly do I implement the state monad here? submitted by /u/theInfiniteHammer [link] [comments]
    Esqueleto Tutorial
    submitted by /u/kqr [link] [comments]
    Introducing an App with a Haskell Backend
    https://arota.ai I’d like to introduce an app built with a Haskell backend. It’s designed to help adults with ADHD stay on top of their schedules. This is the second service I’ve built using Haskell. For this one, I used the servant library. The biggest challenge was the lack of existing packages for features like Apple payments, so I had to implement some things myself. However, the jose package was very helpful for implementing JWT token authentication. When using LLMs, I was able to handle things well thanks to the availability of REST APIs, which I accessed using http-conduit. I’m currently developing in Haskell solo, but I hope the service does well so that I can work with more Haskell developers in the future. I’d greatly appreciate your support. Thank you! submitted by /u/Necessary-Nose-9295 [link] [comments]
    Natuvion is hiring: Help us build a real-world DSL in Haskell (based on Dhall) — now with AI integration!
    We're hiring: Help us build a real-world DSL in Haskell (based on Dhall) — now with AI integration! Our team at Natuvion is growing! We're looking for another Haskell developer to join us in building Compose, a domain-specific language written in Haskell and based on Dhall. Compose is already in beta and being used in real-world projects — from internal tooling to integration in our cloud platform for large-scale data transformation. We’re a fully remote team of 5 Haskell developers and 3 AI engineers, working across Germany, Austria, and Switzerland. We meet in person every few months for workshops and team activities (think escape rooms and good food 🍽️🧩). What you’ll do: Design, prototype, and integrate new functionality into Compose using Haskell Extend the Dhall compiler and tooling with new language constructs Contribute to the language’s standard library and infrastructure Participate in code reviews and design discussions We’re looking for someone who: Has solid experience with the Haskell ecosystem and mid-sized projects (GitHub links welcome!) Is excited about language design and functional programming Bonus: has experience or interest in AI/ML We value focused, respectful collaboration and keep meetings lean — daily standups and two-week sprints. We’re also actively contributing to the awesome Dhall ecosystem and plan to open source more of our work as Compose evolves. 📍 Remote from: Germany, Austria, Switzerland, Slovakia 📄 Apply here: https://natuvion.recruitee.com/o/haskell-developer-2-3 Please apply via the link above — our HR team will be your first point of contact. We’re happy to answer questions in the thread, but we won’t discuss salary ranges publicly due to company policies (feel free to ask HR directly during the process). Looking forward to hearing from you! submitted by /u/monadic_mx [link] [comments]
  • Open

    How I disabled -Xfatal-warnings in IDE (IntelliJ) but kept it in CI (Scala/sbt tip)
    I’ve always liked -Xfatal-warnings for enforcing code quality, but it was killing my ability to experiment inside IntelliJ. So I wrote a short blog post showing how I disabled it only in the IDE using global.sbt, while keeping it strict in CI. Would love to hear how others deal with this trade-off. Blog post: https://lukastymo.com/posts/021-sbt-settings-for-exp/ submitted by /u/lukastymo [link] [comments]
    Quick newbie question
    Admittedly a bit vague here. I'm still getting my feet wet with Scala and was wondering if someone could point me to an example of an application that saves and stores user login information. It's pretty straightforward, but I'm asking to see clearer examples. I believe I could just save the info to a file since I'm just doing a basic example for my own learning, but doing it with a database with something like MySQL would be better and more realistic, yeah? submitted by /u/DragonFly_Bones [link] [comments]
  • Open

    The Archive - Basics - How to Create New Notes
    New introductory series, starting with a tutorial video on how to create notes in The Archive: Enjoy! (And consider leaving a comment and like for the YouTube algorithm to not down-rank our channel for help videos 😅)  ( 2 min )
  • Open

    Org async export fails with "Symbol’s value as variable is void: hfy-user-sheet-assoc"
    When I export a simple test org file with org-odt-export-to-odt, it works fine. Also when I use org-export-dispatch and switch async export off. But with async export switched on, I get: Process ‘org-export-process’ exited abnormally And one of the first lines in *Org Export Process* says Lisp error: (void-variable hfy-user-sheet-assoc). My file set by org-export-async-init-file just contains these lines. (require 'package) (setq package-enable-at-startup nil) (package-initialize) (require 'org) (require 'ox) (require 'cl) How can I further debug the error? I'm not a programmer, regrettably. Org mode version is 9.7.16, Emacs version is 30.1.50. Thank you for any help! submitted by /u/TiMueller [link] [comments]

  • Open

    Browsing & Searching HackerNews (and Reddit) in Emacs
    submitted by /u/ilemming [link] [comments]
    Whiteboard workflow for Org-mode Using Inkscape
    My notetaking workflow heavily based on drawings. So I needed a practical whiteboarding method in org-mode. This setup has been workin great for me especially after I realised inline images support .svg files. I'm sharing in case anyone find it useful. (I don't know anything about lisp, chatgpt generated the code but it's pretty straightforward I guess.. ) (C-c d) to insert a new drawing. (C-c o) to edit the drawing. (add-to-list 'org-file-apps '("\\.svg\\'" . "inkscape %s")) (defun my/org-create-and-open-drawing () "Insert a timestamped SVG drawing link, create the file, and open in Inkscape." (interactive) (let* ((dir "drawings/") (filename (concat "sketch-" (format-time-string "%Y%m%d-%H%M%S") ".svg")) (fullpath (expand-file-name filename dir))) ;; Ensure drawings dir exists (unless (file-directory-p dir) (make-directory dir)) ;; Create minimal SVG if it doesn't exist (unless (file-exists-p fullpath) (with-temp-file fullpath (insert "\n" "\n" ""))) ;; Insert link in org buffer (insert (format "[[file:%s]]\n" fullpath)) (org-display-inline-images) ;; Open in Inkscape (start-process "inkscape" nil "inkscape" fullpath))) (global-set-key (kbd "C-c d") 'my/org-create-and-open-drawing) submitted by /u/awepow [link] [comments]
    Showing org mode link at point in echo area
    While there are some suggestions online how to do this, I haven't found anything as complete as what I ended up with, so I thought I would share it here in case somebody finds it useful! Feedback is also welcome if you have an idea how to do something better. (with-eval-after-load 'org (defun my/org-display-raw-link-at-point () "Display the raw link when the cursor is on an Org mode link." ;; I supress warnings here because org-agenda complains about using ;; `org-element-context' in it, since it is supposed to be used only in org-mode. ;; But it works just fine. (let ((element (let ((warning-minimum-level :error)) (org-element-context)))) (when (eq (car element) 'link) ;; This will show the link in the echo area without it being logged ;; in the Messages buffer. (let ((message-log-max n…
    Agenda View Widget for Android?
    Now that Emacs has a good Android app, is it possible to create a widget that displays an Agenda View? I would love to use this as my default TODO app on Android, and having a widget that is always available on my main screen would help. submitted by /u/modspyder [link] [comments]
    project.el does not ignore directories
    Hey, I have tried adding a particular directory name to vc-directory-exclusion-list but files under the directory still appears in the completion list. When working with rather big projects this slows Emacs down noticeably which is annoying. Have any of wanted to have project.el ignore certain directories in your project directory when using project-find-file (C-x p f)? submitted by /u/its_randomness [link] [comments]
    A small package to add slash-command to Emacs
    I know this package is useless for most of you guys (which key can do all these stuffs), but someone like me may need it. Try to bring slash command from modern editor to Emacs. Here is repo: https://github.com/bluzky/slash-commands Your feed back are welcome. submitted by /u/54tribes [link] [comments]
    Plan 9 Remote File Access from Emacs
    https://preview.redd.it/bzqezmxi8f6f1.png?width=682&format=png&auto=webp&s=25f7be2e5e2fcb46dcf1da411ff2c35bb2585beb Plan 9 Operating System uses 9p protocol for file access. This is an Elisp implementation of the protocol. Details: https://lifeofpenguin.blogspot.com/2025/06/plan-9-remote-file-access-from-emacs.html Code: https://gitlab.com/atamariya/emacs/-/blob/dev/lisp/net/plan9.el submitted by /u/atamariya [link] [comments]
  • Open

    yeetube (20250612.2131) --- Scrape YouTube, Play with mpv & Download with yt-dlp
    The yeetube package has been updated to version 20250612.2131.
    easysession (20250612.1837) --- Persist and restore your sessions (desktop.el alternative)
    The easysession package has been updated to version 20250612.1837.
    snapshot-timemachine (20250612.1320) --- Step through (Btrfs, ZFS, ...) snapshots of files
    The snapshot-timemachine package has been updated to version 20250612.1320.
    smartparens (20250612.1050) --- Automatic insertion, wrapping and paredit-like navigation with user defined pairs
    The smartparens package has been updated to version 20250612.1050.
    color-identifiers-mode (20250612.1046) --- Color identifiers based on their names
    The color-identifiers-mode package has been updated to version 20250612.1046.
    org-mem (20250612.917) --- Fast info from a large number of Org file contents
    The org-mem package has been updated to version 20250612.917.
    terminal-here (20250612.602) --- Run an external terminal in current directory
    The terminal-here package has been updated to version 20250612.602.
    org-roam-ql (20250612.537) --- Interface to query and view results from org-roam
    The org-roam-ql package has been updated to version 20250612.537.
    khalel (20250612.503) --- Import, edit and create calendar events through khal
    The khalel package has been updated to version 20250612.503.
    helm-core (20250612.316) --- Development files for Helm
    The helm-core package has been updated to version 20250612.316.
    justl (20250612.311) --- Major mode for driving just files
    The justl package has been updated to version 20250612.311.
    find-file-in-project (20250612.234) --- Find file/directory and review Diff/Patch/Commit efficiently
    The find-file-in-project package has been updated to version 20250612.234.
    termint (20250612.119) --- Run REPLs in a terminal backend
    The termint package has been updated to version 20250612.119.
  • Open

    Proposal: add nubOrd / nubOrdBy to Data.List and Data.List.NonEmpty
    submitted by /u/Bodigrim [link] [comments]
  • Open

    Issue 476
    Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community. Featured Я ☞ Reinventing records and variants by Murat Kasimov In this chapter we are going to talk about mostly about Sum and Product. You may find those in majority of modern programming languages as well. However, the devil is in the details! Browsing Stackage with VS Code and Glean by Simon Marlow Have you ever wished you could browse all the Haskell packages together in your IDE, with full navigation using go-to-definition and find-references? Here’s a demo of something I hacked together while at ZuriHac 2025 over the weekend. Please use Generically instead of DefaultSignatures! by Jan van B…  ( 3 min )
  • Open

    [Talk] LLM4S Talk in Dallas 🇺🇸 – Scala Meets AI (June 13)
    Join Kannupriya Kalra for a hands-on session on LLM4S, the Scala-first AI toolkit! Learn why Scala is a powerful alternative to Python for LLM development. In this session, you'll learn what LLM4S is, why it matters in the world of AI, and how its architecture is designed — complete with live examples. You'll also discover how to get involved in the project and contribute meaningfully. Whether you're looking to build AI apps the type-safe, functional way, explore advanced techniques like tool calling, zero-shot prompting, and agentic workflows, or collaborate with experienced OSS mentors, this talk is your gateway into the growing LLM4S community. 🗓️ June 13, 6:30–8:30 PM CDT 📍 RSVP: https://www.meetup.com/dallas-scala-enthusiasts/events/307717420/?eventOrigin=group_events_list Star us: https://github.com/llm4s/llm4s AI community: https://discord.gg/YF2cWQD4cg submitted by /u/kannupriyakalra [link] [comments]

  • Open

    org-modern (20250611.2334) --- Modern looks for Org
    The org-modern package has been updated to version 20250611.2334.
    undo-fu (20250611.2331) --- Undo helper with redo
    The undo-fu package has been updated to version 20250611.2331.
    corfu (20250611.2329) --- COmpletion in Region FUnction
    The corfu package has been updated to version 20250611.2329.
    magit-commit-mark (20250611.2320) --- Support marking commits as read
    The magit-commit-mark package has been updated to version 20250611.2320.
    apheleia (20250611.2251) --- Reformat buffer stably
    The apheleia package has been updated to version 20250611.2251.
    ox-report (20250611.2053) --- Export your org file to minutes report PDF file
    The ox-report package has been updated to version 20250611.2053.
    hyperstitional-themes (20250611.1813) --- Weird themes with incremental palettes
    The hyperstitional-themes package has been updated to version 20250611.1813.
    pdd (20250611.1758) --- HTTP library & Async Toolkit
    The pdd package has been updated to version 20250611.1758.
    phi-search (20250611.1725) --- Another incremental search & replace, compatible with "multiple-cursors"
    The phi-search package has been updated to version 20250611.1725.
    company-forge (20250611.1343) --- Company backend for assignees and topics from forge
    The company-forge package has been updated to version 20250611.1343.
    orgtbl-aggregate (20250611.901) --- Aggregate an Org Mode table | + | + | into another table
    The orgtbl-aggregate package has been updated to version 20250611.901.
    magik-company (20250611.737) --- Magik backend for company-mode
    The magik-company package has been updated to version 20250611.737.
    diff-ansi (20250611.510) --- Display diff's using alternative diffing tools
    The diff-ansi package has been updated to version 20250611.510.
    elisp-autofmt (20250611.507) --- Emacs lisp auto-format
    The elisp-autofmt package has been updated to version 20250611.507.
    bookmark-in-project (20250611.333) --- Bookmark access within a project
    The bookmark-in-project package has been updated to version 20250611.333.
    prog-face-refine (20250611.331) --- Refine faces for programming modes
    The prog-face-refine package has been updated to version 20250611.331.
    hl-indent-scope (20250611.330) --- Highlight indentation by scope
    The hl-indent-scope package has been updated to version 20250611.330.
    default-font-presets (20250611.330) --- Support selecting fonts from a list of presets
    The default-font-presets package has been updated to version 20250611.330.
    cycle-at-point (20250611.328) --- Cycle (rotate) the thing under the cursor
    The cycle-at-point package has been updated to version 20250611.328.
    buffer-name-relative (20250611.322) --- Relative buffer names
    The buffer-name-relative package has been updated to version 20250611.322.
    repeat-fu (20250611.321) --- Minor mode to repeat typing or commands
    The repeat-fu package has been updated to version 20250611.321.
    mono-complete (20250611.321) --- Completion suggestions with multiple back-ends
    The mono-complete package has been updated to version 20250611.321.
  • Open

    A new Emacs, is it really needed?
    Hello everyone, this is my first Reddit post ever. Quick intro: Im 21 and im a junior developer. Up until now, I’ve mainly used VSCode, but lately I’ve gotten more interested in the open source world and discovered Neovim. If you know Neovim, you know Vim. And if you know Vim, you’ve definitely heard of “Vim vs Emacs.” Out of curiosity, I decided to try Emacs too and… wow. Without exaggerating, it’s the craziest editor I’ve ever used... for better or worse. Things I didn’t like (just my opinions, please don’t roast me 😅): Freshly installed, Emacs is nearly unusable: no fuzzy finder, no decent file explorer, it saves backup files in the same directory etc... etc… The keybindings are so different: no Ctrl+S to save, Ctrl+F to search, or Ctrl+C / Ctrl+V to copy and paste. Maybe that’s…
    Emacs-driven RAG set management?
    Hey, folks. First, Emacs is an incredible tool for doing LLM-driven work. Most code editors are with the proper plugins but Emacs really shines in this area. It's not where I would have anticpated finding the biggest pay out when I invested in Emacs years ago but I'll take it. Now to the actual question... I would LOVE to have an Emacs-driven flow to allow me to quickly define, update, and switch between RAG sets when working with LLMs. gptel has presets which allow you to do some tuniing of paramaters of your LLM interactions but I don't see anything about RAG set management. I've only just started digging into the other Emacs packages to see what they might offer (ex: ellama, the llm library itself, even some MCP stuff) but I'm not not finding much. I'm really not finding a lot that would allow me to drive other external FLOSS + ecosystem tooling that tries to do some RAG management (ex: OpenWebUI, AnythingLLM). Anyone have any success defining, updating, and flipping between RAG sets within Emacs? Care to share your tricks? thx submitted by /u/sikespider [link] [comments]
    Font sizing headaches
    I use three languages on a daily basis: English, Arabic, and Chinese. My Emacs config is out of wack for Arabic and I can't find a solution anywhere. The problem is font sizing: Arabic font heights usually don't fit with other fonts. Here is the relevant config: (defun set-latin-font (latin-font) (set-face-attribute 'default nil :font latin-font :height 120)) (defun set-arabic-font (arabic-font) (interactive) (set-fontset-font "fontset-default" 'arabic (font-spec :family arabic-font))) (defun set-chinese-font (chinese-font) (interactive) (defun set-chinese-font-for-charset (charset) (set-fontset-font "fontset-default" charset (font-spec :family chinese-font))) (mapcar 'set-chinese-font-for-charset '(big5 big5-hkscs chinese-cns11643-1 chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7 chinese-cns11643-15 chinese-gbk chinese-gb2312 gb18030))) (if (daemonp) (add-hook 'after-make-frame-functions (lambda (frame) (with-selected-frame frame (set-latin-font "JuliaMono")))) (set-latin-font "JuliaMono")) (set-chinese-font "LXGW WenKai") (set-arabic-font "Kawkab Mono") This works, but whenever I write in Arabic, the line has to "scooch" over and create a gap above and below it. See below: https://preview.redd.it/bde8buxvsa6f1.png?width=275&format=png&auto=webp&s=bd8c45c8c2c4a313837d09c79edb09b5ea206a90 See how the line containing the Arabic text is incongruent with the rest? Ugly, right? I can always set a :size on the Arabic font, but this backfires if I text-scale-adjust. I think it's obvious that I barely know what this code does based on the set-chinese-font-for-charset mapcar brute-force monstrosity that I wrote. All I'm saying is there has to be a better way out there. What can I do to solve this? Thanks for your time. submitted by /u/HaydnsPinky [link] [comments]
    Making Emacs lsp-mode work with Rust conditional features
    A small quality of life trick when working with emacs on rust with cargo features and lsp-mode. submitted by /u/avph [link] [comments]
    goose.el – A minimal Emacs interface to Goose, the open-source AI agent
    Hey folks! I recently made a small Emacs package that connects to Goose – the OSS AI agent – from within Emacs. It's still early, but it lets you send buffers or regions as context and chat with Goose right in your editor. I made it for my own workflow, but if you're also using Goose and want Emacs integration, feel free to try it out: 🔗 https://github.com/aq2bq/goose.el Feedback and ideas are very welcome! submitted by /u/aq2bq [link] [comments]
    File permission string
    Here's an Elisp snippet to convert UNIX file permission (eg. 754) to string (eg. "rwxr-xr--"). Any improvement is welcome. https://lifeofpenguin.blogspot.com/2024/04/elisp-snippets.html (defun octal_to_string(octal) (let* ((permission ["---" "--x" "-w-" "-wx" "r--" "r-x" "rw-" "rwx"]) result) ;; Iterate over each of the digits in octal (mapc (lambda (i) (setq result (concat result (aref permission (string-to-number (format "%c" i)))))) (number-to-string octal)) result)) submitted by /u/atamariya [link] [comments]
    EMACS os
    Hello all. I don't have much business playing with computers as I do considering that my day job is as a delivery assistant at a distribution centre, but in the past 8 months I have been having a blast playing with emacs and void linux on my old m93p. I'm not sure why but I've noticed that I am endlessly amused by granular and extensible things. Long story short, I asked chat gpt a few questions and a few activated neurons later, ultimately came to a most amusing idea: What if, kiss linux and plan9 had a baby? The response: 🧭 Final Answer ✅ Yes — if you embrace the Plan 9 approach of “everything is a file” and combine it with KISS’s minimal, manual system philosophy, you can build an OS that is: As transparent as Emacs As composable as Emacs And nearly as extensible — just via shell and structure, not Lisp and buffers. It won’t be Emacs. But it could be Emacs-like in power and openness — and fully aligned with KISS. Before this I thought declarative system configuration like nix and guix was the answer. Ive heard the idea tossed arround that guix was basicaly "emacs-os" and for a while my mind ran with the idea that guile-scheme would extend the concept of a "programmable environment" to the operating system itself. However to my knowledge this is just another thing similar to invoking command sequence with bash script (I don't know much about it so forgive me if that assumption is wrong), just a lisp version if I'm not mistaken. So— yeah! My desire to not leave emacs had brought me to this point, despite my having no reason to even want to live in it hehe. Anyways, I would love to hear the thoughts and opinions of people like you who actually do stuff/work on these things. My only hope is that this is not too off-topic as I would hate to disrupt or offend this community. Thanks for reading and have a good one. submitted by /u/Bi-Jean [link] [comments]
    Not sure what happened; window splits started getting smaller. Anyone else?
    When doing things like M-x magit-status, or M-x grep, in my experience, for years as far as I know, i would get a vertical split, and two equally sized windows, with the new buffer, for magit or grep, placed into one of them. If I already had two windows, then (I think?) the new buffer would replace one of the visual windows - whichever was not the active window. I say “I think” because…. I don’t ever remember thinking about this before, or modifying emacs to set up this behavior. As far as I remember, it’s always worked like this for me. But this week, without any explicit action by me, the window splits started behaving differently. If I had two windows active, then I’d get a third. And if I ran another command that required a window (M-x compile) I just kept getting more and more windows. They just kept splitting. I searched and found split-width-threshold and the similar variable for height. I don’t remember ever setting them; there is no mention of them in any of my init files. I don’t recall ever knowing of these variables, though they have been around a long time. but they had numeric non-zero values in my emacs . (Something Like 120 and 160; I can’t remember exactly though) When I set them both back to nil, window splits began behaving in the way I remember. So what happened? I didn’t change my emacs version. Has anyone else experienced this? Could it be that a version of a package I installed , quietly had set those variables to cause the different behavior? I’m not stuck, just curious. submitted by /u/AyeMatey [link] [comments]
    completion experiment - hotfuzz-with-orderless
    submitted by /u/redmorph [link] [comments]
  • Open

    What are the actual definitions of curry and uncurry?
    Hi, I'm studying Computer Science at a university and we're learning Haskell. We were taught the definitions of curry and uncurry as: curry :: ((a, b) -> c) -> a -> b -> c curry f x y = f (x, y) uncurry :: (a -> b -> c) -> ((a, b) -> c) uncurry f (x, y) = f x y And we were taught that curry and uncurry are inverses of each other, where (curry . uncurry) = id :: (a -> b -> c) -> (a -> b -> c) (uncurry . curry) = id :: ((a, b) -> c) -> ((a, b) -> c) But neither of the claims are true, since in Haskell bottom and (bottom, bottom) behave differently (although they arguably carry the same amount of information). So if we write the following: f :: ((a, b) -> String) f (x, y) = "hi" g :: ((a, b) -> String) g _ = "hi" bot = bot f (bot, bot) -- Returns "hi" f bot -- Returns bottom …
    [Job] Obsidian Systems - Hiring Remote Software Engineers - Functional Programming
    Hi Haskellers, We're currently hiring software engineers at Obsidian Systems. We're a fully remote company that's been in business since 2014. Looking for candidates with: 3+ years of software engineering experience Experience developing fintech, blockchain, AI, data science, open-source, and/or enterprise applications Documented experience in functional programming, with a strong preference for Haskell and/or Rust Understanding of system design and architecture principles Experience working with fully remote teams Proactive communication skills 9-5 EST hours for collaboration. Paid benefits if you're in the US. Job details: https://obsidian.systems/jobs/software-engineer submitted by /u/Obsidian-Systems [link] [comments]
    Я ☞ Reinventing records and variants
    New chapter is out: how to handle data in general. It's quite short since types have eaten all bloated boilerplate! submitted by /u/iokasimovm [link] [comments]
  • Open

    [Job] Obsidian Systems - Hiring Remote Software Engineers - Functional Programming
    We're currently hiring software engineers at Obsidian Systems. We're a fully remote company that's been in business since 2014. Looking for candidates with: 3+ years of software engineering experience Experience developing fintech, blockchain, AI, data science, open-source, and/or enterprise applications Documented experience in functional programming, with a strong preference for Haskell and/or Rust Understanding of system design and architecture principles Experience working with fully remote teams Proactive communication skills 9-5 EST hours for collaboration. Paid benefits if you're in the US. Job details: https://obsidian.systems/jobs/software-engineer submitted by /u/Obsidian-Systems [link] [comments]
    S2D - Simple Videogames Programming Library written in Scala
    Hello everyone, this is my first post in this reddit! For the last few weeks I've been working on a 2D games library for the Scala programming language, written in Scala. I just published the 1.0.0 release, which includes the most basic functions to let users work with basic shapes, textures or images and also window management. Here is the link to the git repo: https://github.com/FinochioM/S2D The library uses LWJGL3 for most of the functionalities and takes a similar approach as Raylib, keeping the code as clean and simple as possible. I wanted to work on something like this since I am new to the language, I was curious about learning it since a friend of mine told me many times is really good, and I was searching for a library like raylib that I could use (I am a videogames programmer who uses Odin and JAI). Maybe there are other libraries that are also written in Scala and that use the same approach as I do but I really enjoyed working on this and I have some ideas on how to expand it. That's it for this post, you can read more about the library in the README file. Thanks! submitted by /u/LieEmpty7137 [link] [comments]
    Newbie sbt question, sbt assembly doesnt compile small app
    Hello, I was experimenting with SBT and tried to assemble my app. My app is running ok whenever I use sbt run but when I assembled it, I got the following error: [error] 1 error(s) were encountered during the merge: [error] java.lang.RuntimeException: [error] Deduplicate found different file contents in the following: [error] Jar name = jackson-core-2.14.3.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class [error] Jar name = jackson-databind-2.14.3.jar, jar org = com.fasterxml.jackson.core, entry target = META-INF/versions/9/module-info.class [error] Jar name = jackson-datatype-jdk8-2.14.3.jar, jar org = com.fasterxml.jackson.datatype, entry target = META-INF/versions/9/module-info.class [error] Jar name = jackson-datatype-jsr310-2.14.3.jar, j…
  • Open

    [Plug-in] List of All Tags
    I was in need of a list of all tags found in all notes in The Archive. I found this forum post about it: https://forum.zettelkasten.de/discussion/936/is-it-possible-to-see-a-list-of-all-tags Since The Archive now has a plug-in system, I created one to do exactly that. It is very simple, perhaps it might me useful for someone. Just download the ZIP file and double-click on the extracted file to install the plugin. Suggestions welcome!  ( 2 min )

  • Open

    C-S-u mystery?
    C-S-u is used pretty much everywhere1 to enter unicode mode at the keyboard level - so in foot, C-S-u b 0 results in the degree unicode °. Firefox needs C-S-u 0 x b 0 for the same thing. emacs is doing it's own thing of course but what is it? C-u is well known as universal-argument. C-S-u on my system (emacs-pgtk on sway/wayland) displays an underlined letter 'u' and waits for another keystroke. It then inserts that character - thus C-S-u b just inserts "b" without waiting for the '0'. Just kinda weird - what is it up to? It gets weirder - if I type C-S-u x it just ignores the 'x'. I thought it might be waiting for a hex code, but no. C-S-u 0 just types the '0', so it's not waiting for a hex code. emacs -nw running on foot just does the foot thing, of course. Would it be better if C-S-u inserted a unicode char in the same way? So my question is - what is C-S-u and can I keybind it to something like insert-char Apologies to the CJK/LOTE/non-latin users who do this all the time - but maybe you have my answer!! ----- 1 foot, firefox, gtk, ... not sure about qt? submitted by /u/StrangeAstronomer [link] [comments]
    MOC/TOC for project or area folders?
    I am new to Emacs and am building up my own config from scratch. I am trying to use this as a life-management system. I'm trying to develop my own system and workflows as well and need help with a specific idea. My folder structure is going to follow one similar to the PARA system (not exactly the same, but I digress) I will have an "areas" directory, and inside there, subdirectories for each area (e.g. car, home, computer, etc) for keeping track of maintenance and other necessary stuff. I will also have a "projects" directory with subdirectories for each project. I am planning on having a fairly structured layout for each project and area so that the folder structure and files inside these subdirectories will be very similar. For example, every project will have a blueprint file, a brain…
    compile-angel - Speed up Emacs by Automatically Byte-Compiling and Native-Compiling All Elisp Files (Release 1.1.0)
    submitted by /u/jamescherti [link] [comments]
    org-roam backlinks question
    Greetings all! I think a simple question. I was wondering where to put backlinks to a blank index node from a topic node. For example, I'm taking a note about 'foo' in a node I created called 'foo-topic': ``` :PROPERTIES: :ID: 1603963C-3B57-4A2A-B3F7-FCC2B264107C :END: +title: foo-topic All about topic 'foo' ``` I already have a blank index node, titled 'foo-index': ``` :PROPERTIES: :ID: C54CD122-80CA-4FB0-A98C-E302EF5A38E6 :END: +title: foo-index ``` Where to I put the backlinks to foo-index (and possible other nodes)? Should I just make a links section at the bottom of the page? submitted by /u/kennethpbowen [link] [comments]
    org-node-mcp
    I wrote a thing: https://github.com/alander/org-node-mcp You can read, write, edit and link your org-node knowledge from an LLM. Mostly for me, but happy to share it with the world. -A submitted by /u/isomr [link] [comments]
    jdtls freezes emacs constantly, is it a config issue or is this to be expected
    for the past 2 weeks i've be trying make emacs work for java dev, but the lsp keeps freezing and crashing emacs that i have to force kill the emacs process. is it just me or am i missing some config that need to be made. i tried using doom emacs' default java config and also add my own, i tried with corfu and with company. all give the same results here's the config i added (after! lsp-java (setq lsp-java-vmargs `("-XX:+UseParallelGC" "-XX:GCTimeRatio=4" "-XX:AdaptiveSizePolicyWeight=90" "-Dsun.zip.disableMemoryMapping=true" "-Xmx4G") lsp-enable-indentation nil lsp-java-completion-max-results 50 lsp-java-progress-reports :disabled lsp-java-autobuild-enabled nil)) (after! java-mode (setq c-basic-offset 4 tab-width 4 indent-tabs-mode nil) submitted by /u/A-wannabe-DEV [link] [comments]
  • Open

    First Make It Correct
    submitted by /u/n_creep [link] [comments]
    Newbie Play! question, why only JSON AJAX failed?
    Hello, So I've been experimenting with Play framework, and I ran into the following problem while sending XMLHttpRequest for 'post-results' route: --- (Running the application, auto-reloading is enabled) --- INFO p.c.s.PekkoHttpServer - Listening for HTTP on /[0:0:0:0:0:0:0:0]:9000 (Server started, use Enter to stop and go back to the console...) INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler 2025-06-10 20:33:51 INFO play.api.http.EnabledFilters Enabled Filters (see ): play.filters.csrf.CSRFFilter play.filters.headers.SecurityHeadersFilter play.filters.hosts.AllowedHostsFilter 2025-06-10 20:33:51 INFO play.api.Play Application started (Dev) (no global state) 2025-06-10 20…
  • Open

    enh-ruby-mode (20250610.2139) --- Major mode for editing Ruby files
    The enh-ruby-mode package has been updated to version 20250610.2139.
    compile-angel (20250610.1813) --- Automatically Compile Elisp files (auto-compile alternative)
    The compile-angel package has been updated to version 20250610.1813.
    shfmt (20250610.1538) --- Reformat shell scripts using shfmt
    The shfmt package has been updated to version 20250610.1538.
    denote-project-notes (20250610.1516) --- Link Denote notes to a project
    The denote-project-notes package has been updated to version 20250610.1516.
    clojure-ts-mode (20250610.1403) --- Major mode for Clojure code
    The clojure-ts-mode package has been updated to version 20250610.1403.
    python-mode (20250610.1045) --- Python major mode
    The python-mode package has been updated to version 20250610.1045.
    org-anki (20250610.911) --- Synchronize org-mode entries to Anki
    The org-anki package has been updated to version 20250610.911.
    difftastic (20250610.752) --- Wrapper for difftastic
    The difftastic package has been updated to version 20250610.752.
    emms (20250610.247) --- The Emacs Multimedia System
    The emms package has been updated to version 20250610.247.
    hl-prog-extra (20250610.56) --- Customizable highlighting for source-code
    The hl-prog-extra package has been updated to version 20250610.56.
    undo-fu-session (20250610.52) --- Persistent undo, available between sessions
    The undo-fu-session package has been updated to version 20250610.52.
    scroll-on-jump (20250610.50) --- Scroll when jumping to a new point
    The scroll-on-jump package has been updated to version 20250610.50.
    sidecar-locals (20250610.38) --- A flexible alternative to built-in dir-locals
    The sidecar-locals package has been updated to version 20250610.38.
    shift-number (20250610.34) --- Increase/decrease the number at point
    The shift-number package has been updated to version 20250610.34.
  • Open

    Any way to embed blocks/headers into org mode (Similar to Logseq)
    Hey guys! Been using org-mode/roam for a few years now, and overall im really happy with it. Out of curiosity, I tried out Logseq, and even though it is quite slow, the feature of embedding whole blocks, and zooming in on the bullets was really appealing to me. So let's say that i take some notes in a file like journal/dailes, can i have specific headers from that file be embedded inside of another file? Thanks! submitted by /u/Nixx_FF [link] [comments]
    Manually apply emphasis on text inside code block?
    Hi. I do a lot of documentation using org-mode and code blocks. I never use the code blocks for tangling - just HTML or ODT export. There are many time when I'd like to manually mark up (usually to make bold) text inside the code block. Is there any way to do this? I've searched all over and found one thread on emacs stackexchange about this but it was from 4 years ago and didn't have a solid solution - just some experimental emacs lisp that's way past my expertise. Any solutions, suggestions, work-arounds? I've had to export to ODT and then do my manual markup in Libreoffice or MS Word, which is not a great solution. Thanks! submitted by /u/quantum_mattress [link] [comments]
    Anyone using a hybrid ChatGPT + Org-mode workflow?
    Just curious how many folks here are combining ChatGPT with Org-mode in their day-to-day thinking, planning, and documentation. I’ve been using them together and the synergy is unreal. Org gives me structure and agenda power. ChatGPT helps me generate, refine, and cross-link ideas into org files quickly. The result feels like a thinking assistant plugged directly into my knowledge graph. Are others doing something similar? Do you use ChatGPT to write or update org files? Are there workflows or scripts that make the integration smoother? Any cool tricks you’ve found for org-capture, logbooks, or journaling? submitted by /u/Zestyclose-Pay-9572 [link] [comments]
  • Open

    Learning Physics with Haskell and Functional programming
    This is the talk from Lambda Conf 2025 https://dev.to/estebanmarin/learning-physics-with-functional-programming-and-haskell-l1h https://www.youtube.com/watch?v=Zp5D_wMi97Q&ab_channel=LambdaConf submitted by /u/flatmap_fplamda [link] [comments]
    Haskell Internship @ Tesla
    Did you know that we use Haskell in production at Tesla for some critical tasks? We're currently looking for an intern for the fall session (roughly Sept to Dec 2025). If you're interested and graduating in December 2026 or before, please apply on the careers page here: https://www.tesla.com/careers/search/job/internship-haskell-software-developer-vehicle-firmware-fall-2025-240953 submitted by /u/vehiclesoftware [link] [comments]
    Challenges
    I saw this on Go's subreddit and thought to share here as there are good and variety of challenges https://github.com/plutov/practice-go?tab=readme-ov-file submitted by /u/kichiDsimp [link] [comments]
    New Hasktorch project
    Hello, I have been enjoying Haskell for a few months now. I am currently doing an internship at Ochanomizu University in Tokyo at the Bekki la, which specializes in NLP using Haskell, particularly with Hasktorch, the Haskell binding for Torch. I am currently working on a project to reimplement GPT2 in Hasktorch. If you would like to follow and support the project, feel free to check it out and leave a star. This is the link : https://github.com/theosorus/GPT2-Hasktorch And if you want to contribute or give advice, feel free submitted by /u/Longjumping-Support5 [link] [comments]

  • Open

    srfi (20250609.2346) --- Scheme Requests for Implementation browser
    The srfi package has been updated to version 20250609.2346.
    rom-party (20250609.1816) --- Rendition of jklm.fun's "Bomb Party" game
    The rom-party package has been updated to version 20250609.1816.
    base16-theme (20250609.1645) --- Collection of themes built on combinations of 16 base colors
    The base16-theme package has been updated to version 20250609.1645.
    consult (20250609.1616) --- Consulting completing-read
    The consult package has been updated to version 20250609.1616.
    racket-mode (20250609.1522) --- Racket editing, REPL, and more
    The racket-mode package has been updated to version 20250609.1522.
    emacs-everywhere (20250609.1444) --- System-wide popup windows for quick edits
    The emacs-everywhere package has been updated to version 20250609.1444.
    rust-mode (20250609.1420) --- A major-mode for editing Rust source code
    The rust-mode package has been updated to version 20250609.1420.
    aider (20250609.1402) --- AI assisted programming in Emacs with Aider
    The aider package has been updated to version 20250609.1402.
    yankpad (20250609.1121) --- Paste snippets from an org-mode file
    The yankpad package has been updated to version 20250609.1121.
    org-roam (20250609.820) --- A database abstraction layer for Org-mode
    The org-roam package has been updated to version 20250609.820.
  • Open

    Preview Latex Error (emacs)
    I am very new to latex, emacs and linux, but i have been researching for quite some time but cannot find what the issue is. Within emacs, i have been using auctex - which to my understanding includes preview tex. i have compiled using pdflatex, and created a pdf document, however when i try to preview either the buffer or the document within the f10 menu of emacs, i have consistently gotten the Display geometry unavailable: Wrong type argument: number-or-marker-p, nil I am sure this would be a simple fix, but i am not in the know. thankyou for you help 🙏 Edit: although attempted on both, do i use preview-tex on the pdf itself or the normal .tex document? Forgive my lack of knowledge please :) p.s. would this auto-compile or compile at a keypress without a long winded chain of commands? if not, how submitted by /u/Relative_Secretary14 [link] [comments]
    Any Journelly users? How are you working with Journelly.org in emacs on your Mac?
    submitted by /u/TeeMcBee [link] [comments]
    Desktop save mode restoring buffers too early?
    I am using desktop-save-mode, and I've noticed that when I open emacs and my desktop is restored, the buffers it opens don't have some of the modes enabled that should be enabled. I suspect it's because the buffers are restored before all of my packages were loaded, and thus the appropriate hooks were never run on them. Is there an easy way to ensure that my packages are loaded and hooks set before the buffers are restored? Maybe something like this? (doesn't work) (use-package emacs ... :custom (desktop-save-mode 1) (desktop-restore-eager nil) :hook ((after-init . (lambda () (desktop-read)))) submitted by /u/rustvscpp [link] [comments]
    Circumflex (^) stopped work in Emacs after icaclient upgrade
    My copy of Emacs (25.3.1 on Windows 10 VM) seems to ignore circumflex (^) and grave accent (`). Locally Emacs (27.1 on Pop_OS!) work as expected. This happened following a Citrix Workspace (icaclient) upgrade. For sake of sanity I verified ^ and ` can be typed into Notepad. I you can respond and suggest how to debug this issue it will be greatly appreciated. Cheers, -Randy submitted by /u/randygalbraith [link] [comments]
    ob-nix : how to inhibit *ORG-Babel Error Output* buffer if evaluation suceeds
    here is the code (require 'ob) (require 'ob-ref) (require 'ob-comint) (require 'ob-eval) ;; possibly require modes required for your language (defcustom ob-nix-command "nix-instantiate" "Name of command to use for executing nix code." :group 'org-babel :type 'string) (defun org-babel-execute:nix (body params) "Evaluate nix code with org-babel. Argument BODY takes a source blocks body. Argument PARAMS takes a source block paramters." (let ((in-file (org-babel-temp-file "nix" ".nix")) (json (cdr (assoc :json params))) (xml (cdr (assoc :xml params))) (strict (cdr (assoc :strict params))) (verbosity (or (cdr (assq :verbosity params)) t))) (let ((cmd (concat ob-nix-command " --eval " (if json "--json ") (if xml "--xml ") (if strict "--strict ") (if verbosity "--verbose ") " -- " (org-babel-process-file-name in-file)))) (with-temp-file in-file (insert body)) (message "%s" cmd) (org-babel-eval cmd "")))) (provide 'ob-nix) what modifications should i do so that the compilation popup buffer only show if the fails or exit code is non-zero repo link https://github.com/emacsmirror/ob-nix/blob/master/ob-nix.el submitted by /u/bbroy4u [link] [comments]
    Next Emacs stable release
    Hey I'm just wondering how do you feel when the next Emacs stable release (30.2) will be released? And what do you think will be the most important incompatible change in 31.1? submitted by /u/Vacuum_Fridger [link] [comments]
    What is your most preferred font and theme?
    Hi Emacs Community, I know this can be very personal preference and depends on individuals. But I'm sure there are many users like me, who is never satisfied with any font or theme. As time goes, I crave for something new and better, and there goes simply wasting time searching for "best" one out there. So let us know, whats is your most preferred font (mono & variable pitch) and theme, in emacs and everywhere. Also do mention the context of how you prefer it (add a story if you like). My take: Font: After plethora of trying them all from https://www.programmingfonts.org/ https://www.nerdfonts.com https://www.codingfont.com/ to even custom variant https://typeof.net/Iosevka/customizer Currently I use "Maple Mono", its so satisfying and smooth. Theme: I went to create my own emacs theme called "Haki" git, and later realized prot had many options open for users to tweak modus theme. I use little modified modus vivendi with my "Haki" flavor of colors. I use these both for my Emacs and whole system (via nix using stylix for it) submitted by /u/GolD_Lip [link] [comments]
  • Open

    Constraining associated type
    I have constraints on a class where an associated type is defined. However, in trying to use the associated type in other data declarations I am struggling, due to "no instance for Show...". Specific example: class (Exception (CustomError m t), Show (CustomError m t)) => Foo m t where type CustomError m t :: Type doStuff :: Int -> m (t (Either (Error m t) String)) data Error m t = ErrorString String | ErrorCustomError (CustomError m t) deriving (Exception, Show) What am I missing? submitted by /u/grumblingavocado [link] [comments]
    [ANN] mcp-server (an awesome framework for building MCP servers!)
    I'm really excited to release https://hackage.haskell.org/package/mcp-server into the wild! I've tried to present the most ergonomic approach to building MCP Servers in Haskell, through clean data type definitions and a sprinkling of Template Haskell to derive most of the boilerplate. Take a look at the examples in the README or in the `examples` folder. Does anyone else think that Haskell is the nicest way to build MCP servers? Would love any comments, crits or suggestions! submitted by /u/tomwells80 [link] [comments]
    The "Haskell Book" ?
    I just checked the "Type Driven Development with Idris" often called the "Idris Book" I guess it's by the author of the language and ofcourse it it's free to read. A well known language Rust too have this, what you veterans Haskell will consider this (?) submitted by /u/kichiDsimp [link] [comments]
    Uninstaller is corrupted?
    Hi so I'm trying to uninstall this app how ever its been giving me problems. Whenever i try to delete the app it keeps giving me this issue. So i go to this file location and it turns out the uninstaller has been corrupted. Does anyone know how i can fix it and what caused it to get corrupted? submitted by /u/Perfect_Campaign4630 [link] [comments]
  • Open

    Any Journelly users? How are you working with Journelly.org on your Mac?
    I'm trying out the iOS app, Journelly, which I've set up to keep its data in iCloud. On the Mac side, that appears as: ~/Library/Mobile Documents/iCloud~com~xenodium~Journelly/Documents/Journelly.org How do you interact with that file within emacs in Org mode? For example: Do you keep it as read-only on your Mac, or do you allow yourself to edit it there too? If you allow yourself to edit on the Mac, is colliding with the Journelly app over in iOS a potential problem, and if so how do you deal with that? Regardless of whether you treat it as ro or rw, do you use it in situ, just visiting the file where it is in its ~/Library//Journelly.org location? And if so, do you add that path to things like org-agenda-files or org-agenda-text-search-extra-files etc? Or do you instead perhaps symlink to it from your main Org files area and then access it via that symlink? If so, do you do anything else to make that approach work OK? (I vaguely recall having issues in the past when symlinking to Logseq). thanks. submitted by /u/TeeMcBee [link] [comments]
  • Open

    What is the chance that Option will become a value class with JDK Valhalla?
    My code uses Option heavily. However, this is the worst sin you can commit on a modern processor - an extra memory indirection, and extra 20 bytes for object header + tag + pointer. Ideally, we should do something like Rust, where null represents None, and a pointer represents Some(). Even a deeply nested Option>> requires just one byte tag, and no extra memory redirection. I have hopes for Valhalla, which could eliminate the memory indirection and save up to 75% of space. Are there any plans in the works for take advantage of this, at all? I think it could be massive, considering how often Option[T] is used in Scala. submitted by /u/Prize_Tourist1336 [link] [comments]
    GitHub - IRS-Public/direct-file: Direct File -IRS uses scala (see the facts service)
    submitted by /u/MargretTatchersParty [link] [comments]
    ZIO Logging issue
    https://preview.redd.it/qy6hrblont5f1.png?width=2889&format=png&auto=webp&s=31397279f7046ebbea6918d3ff4875aa250a0bd4 I am building an application with ZIO and I see a weird issue with the logging. As seen in the screenshot, the logging is coming from the GetUserClosetSvcFlow class, but I called like three different APIs/flows. Only the logging from that one class ever shows up. Any ideas on what the issue could be? Here's the repo if anyone wants to take a closer look https://github.com/sjoseph125/closetassistant p.s. if you have anyother tips on the code, that is welcome as well :) submitted by /u/sjoseph125 [link] [comments]

  • Open

    password-menu (20250608.2335) --- Password Menu for auth-source secrets
    The password-menu package has been updated to version 20250608.2335.
    naga-theme (20250608.1926) --- Dark color theme with green foreground color
    The naga-theme package has been updated to version 20250608.1926.
    jira (20250608.1838) --- Emacs Interface to Jira
    The jira package has been updated to version 20250608.1838.
    wanderlust (20250608.1828) --- Yet Another Message Interface on Emacsen
    The wanderlust package has been updated to version 20250608.1828.
    semi (20250608.1825) --- MIME features
    The semi package has been updated to version 20250608.1825.
    flim (20250608.1812) --- Basic message representation and encoding features
    The flim package has been updated to version 20250608.1812.
    apel (20250608.1806) --- Support for portable Emacs Lisp programs
    The apel package has been updated to version 20250608.1806.
    nice-org-html (20250608.1715) --- Prettier org-to-html export
    The nice-org-html package has been updated to version 20250608.1715.
    auto-virtualenv (20250608.1633) --- Automatically activate Python virtualenvs based on project directory
    The auto-virtualenv package has been updated to version 20250608.1633.
    devdocs (20250608.1414) --- Emacs viewer for DevDocs
    The devdocs package has been updated to version 20250608.1414.
    neut-mode (20250608.958) --- A major mode for Neut
    The neut-mode package has been updated to version 20250608.958.
    fsrs (20250608.644) --- Free Spaced Repetition Scheduler
    The fsrs package has been updated to version 20250608.644.
    eask (20250608.221) --- Core Eask APIs, for Eask CLI development
    The eask package has been updated to version 20250608.221.
    varuga (20250608.219) --- Send ical calendar invites by email
    The varuga package has been updated to version 20250608.219.
    org-chef (20250608.130) --- Cookbook and recipe management with org-mode
    The org-chef package has been updated to version 20250608.130.
  • Open

    Newbie question, why do I end up reversing my lists? Do I need a queue?
    Hello, so I'm still new to Scala and as I wrote this basic app, after a while I realized I'm either reversing results of my functions or prepending to the end of the List. I realized Lists behave a lot like Stacks, so maybe I need a queue data structure. But then most can still solve the problem by recursion of form elem :: recursion(rest). I feel my implementation is also not efficient, considering messing with the end of a list is more costly than front. Context: The app I'm writing needs to precess vehicles effectively thru crossroads/intersection, later it generates JSON with how things are happening, like lights signalization, pedestrian walks, etc. The controller is a simplistic implementation of just flushing all cars in one step out of the crossroads, but more complex controllers…
    This week in #Scala (Jun 9, 2025)
    submitted by /u/petrzapletal [link] [comments]
  • Open

    Type-safe neural networks in Haskell, correct by construction
    Heuron I am/was fed up with Python. I love Haskell. For quite some time now, I intended to write a library to leverage Haskells type-system to only allow me to write correct neural networks. The README on my GitHub says most of it, but here the gist: A general and (hopefully library-user-) extendable description of a neural-net on the Haskell level. A suite of backends which can interpret the general description and make something meaningful out of it. Originally I intended to use this as an exercise to implement all on the Haskell level. There is a Heuron.V2.Backend.Haskell which just "creates a Haskell program" for inference/training from the general description. Then I realized I can do basically anything with the description, so I had the idea to later use clash for some playful FPGA compatible generation (still not started that one). Finally I had to do some real world shenanigans with PyTorch and now came around continuing Heuron with my needs in mind. So: I have written a basic backend to generate a pytorch model from the network description. I still have to iron out some stuff. Currently, this is V2, still experimental and only suited to what I need, but I intend to let the next version be "final" and maybe some of you have some advanced experience and can bring insight into what can/should otherwise be done/be possible with something like this. Since I do not intend for this to be some production grade library, although I would not mind ultimately, but there is just so much other stuff out there which makes this obsolete in the grand scheme of things. Nonetheless, I have fun, I was lurking this sub for years now and wanted to contribute SOMETHING once. Haskell is the pinnacle of programming languages for me and maybe this inspires someone to do something, just like I was so often inspired by posts on this sub. Keep it up guys, stay strong and stuff. submitted by /u/LambdaXdotOne [link] [comments]
    Please use Generically instead of DefaultSignatures!
    submitted by /u/n00bomb [link] [comments]
    Help my friend
    My buddy works at a devsecops company. They usually do static analyzing all sort of compiler crazy stuff I suggested him to give Haskell a try, as he his new task was related to Recursive Descent Manual Parsing. But he asked me how to learn Haskell, a simple opinionated and up to date guide. What shall I recommend him, he is having many doubts like is Haskell a good choice or is it just academic Sadly he doesn't use Reddit, so he asked for my help. If you guys have any suggestions please drop 🤞🙏 submitted by /u/kichiDsimp [link] [comments]
    Typing the futamura projections
    submitted by /u/sciolizer [link] [comments]
  • Open

    Repeat Mode, now with _hints_
    Repeat mode is a great time-saver (thanks u/karthink!). In Emacs 30 we added a small but useful flourish to repeat: hints — short strings to go along with the key in the "Repeat with..." message, to remind you what you can repeat. From the defvar-keymap docstring: ‘:hints’ is a list of cons pairs where car is a command and cdr is a string that is displayed alongside of the repeatable key in the echo area. Rather than this, I use a macro in my init to repeat-ify lots of command groups. Adding hint support was simple: (defmacro my/repeat-it (group cmds) (let ((map (intern (concat (symbol-name group) "-repeat-map")))) `(progn (defvar ,map (make-sparse-keymap)) (cl-loop for (key def hint) in ,cmds do (define-key ,map (kbd key) def) (put def 'repeat-map ',map) (when hint (put def 'repeat-hint hint)))))) Then, e.g.: (my/repeat-it python-indent-shift '((">" python-indent-shift-right "indent") ("<" python-indent-shift-left "dedent"))) python-indent-shift repeat and it's smart about included chars: smerge repeat One other helpful repeat idea: to be sure I know when I'm repeating, I change the cursor color when a repeat is active. I repeat things like org-prev/next-item, etc. What repeat groups do you rely on? submitted by /u/JDRiverRun [link] [comments]
    I currently use Obsidian to take notes. Taking screenshots is important for me. Is it possible to do it in Orgmode?
    Title submitted by /u/_commitment [link] [comments]
    Do you use a shell wrapper for emacs?
    Sometimes when I'm managing a system, I might be in the terminal, going through various directories and doing things. I might need to edit a config file here and there, and I don't always instinctively remember to type emacsclient instead of emacs, so I'm affected by the long startup time. So, today I added a shell wrapper like this: ``` function emacs { if [[ $(pgrep -cf emacs) -eq 0 ]]; then echo -n "Starting Emacs daemon..." command emacs --daemon 2>/dev/null echo "done" fi emacsclient $@ } ``` It works but I also find emacsclient a bit confusing. I mean if I have 2 terminal windows and I try to run emacsclient on both of them, the first one's content changes. Is this how it is or does emacsclient also have some kind of setting to keep sessions isolated? submitted by /u/birdsintheskies [link] [comments]
    Good Sane Doom Emacs Config Settings For Python Projects
    Let's see your good Python based Doom Emacs configs, thanks submitted by /u/BackToPlebbit69 [link] [comments]
  • Open

    What if I have two differents points of interest
    Hello, Here's my first question, I have to different points of interest : Nature (forest, permaculture, ...) Computer (coding, opensource, ...) Do I make one single Zettelkasten including both topics ? or two separate ? First thought was to make two distincts, because mixing will be chaos In case of merging the two, how tagging could prevent the mess ? Do you have any feedback ? Thanks  ( 4 min )
    Hello from France
    Hello, I discover recently Zettelkasten, and I want to try it Hope to find answers here  ( 2 min )

  • Open

    Looking for Org Sparse Trees but for source code
    I'm looking to see if anyone knows an emacs package that allows you to filter a buffer by tags the way that you can with sparse trees in org mode, but for arbitrary files types. I was thinking that for personal programming projects, I'd like to try to organize my code primarily using tags in the comments, and I'd ideally like to narrow a buffer down to the subset which is relevant for a given tag the way that C-c / m does in org mode. Has anyone done something that would facilitate this? submitted by /u/lispy-hacker [link] [comments]
    org-mode tagging Wrong type argument: char-or-string-p
    I sometimes use tagging in org-mode for todos, like today or waiting, but yesterday I found I'm no longer able to do this, with the following displaying after trying to use C-c C-c to bring up the tag selection buffer Wrong type argument: char-or-string-p, (32 \.r) I don't think I changed anything in settings, .init, etc.; I do use emacs on a MacBook, not sure if the OS updated Emacs on its own and something changed? Wondering if anyone else knows what this might be submitted by /u/kr44ng [link] [comments]
    Show list of M-x commands in minibuffer
    I use Vertico, Consult, Corfu, Orderless and Cape. When searching for files or switching buffers I get a nice list of options, including the number of options and which number is selected. When I choose execute-extended-command by pressing M-x, I just get one line in the minibuffer showing M-x {eval-buffer} (so the last command I chose). I do get the desired list of commands if I use fido-vertical-mode (which I don't normally use), but then I get a double list of options when switching buffers or visiting files. How do I get the desired behaviour in (I presume) Vertico? GNU Emacs 30.1 (build 1, x86_64-unknown-openbsd, GTK+ Version 2.24.33, cairo version 1.18.4) of 2025-06-04 submitted by /u/Jeehannes [link] [comments]
    Help with implementing a vim keybinding in emacs (with evil)
    Hi, In a previous post, a kind redditor helped me out with adding a non-conventional prefix key (t) for certain commands like so: (define-prefix-command 'pani/t-key) (define-key evil-motion-state-map (kbd "t") 'pani/t-key) (define-key pani/t-key (kbd "j") 'tab-previous) (define-key pani/t-key (kbd "k") 'tab-next) (define-key pani/t-key (kbd "n") 'tab-new) (define-key pani/t-key (kbd "x") 'tab-close) (define-key pani/t-key (kbd "X") 'tab-close-other) I'm using evil bindings and this seems to clash to motions like ct) that you would use in vim. I'm wondering if there is a better way to implement this without this clash. For instance, in vim it is straightforward as: nnoremap tn :tabnew nnoremap tk :tabnext nnoremap tj :tabprev I'd really appreciate any help on this! Thanks. submitted by /u/kn0xchad [link] [comments]
    TIL emacs-mac can change the color of the cursor based on some themes
    submitted by /u/TheInzaneGamer [link] [comments]
    How do I stop irrelevant holidays being displayed in Org-agenda when running `org-agenda-toggle-diary`?
    submitted by /u/nonreligious2 [link] [comments]
    Vibecoding in emacs with amp
    https://www.shaneikennedy.xyz/blog/vibecoding-in-emacs-with-amp I mention some other similar tools in the post like aideremacs and ellama, both great but this one focuses on Sourcegraph's Amp specifically, let me know what you think! https://preview.redd.it/yvogwclc0i5f1.jpg?width=1200&format=pjpg&auto=webp&s=c09626c5549b14822987a09c8ea8d18e9ae25b33 submitted by /u/shaneikennedy [link] [comments]
    Deleting commented lines on buffer
    Hi all, I have a file with many comments starting with #. Some comments have # as the first character of a line. On some comments I have whitspaces before #. On some comments # is appearing after a certain text , like on "a = 2" # sets a as two. I may be missing something, I've found the command comment-kill but it seems not to work on regions, and I've not clearly understood its behaviour. Is there a builtin command that can at least delete the comments that are not "inline"? Or the only solution is to cook an elisp function? Thanks! submitted by /u/no-dupe [link] [comments]
  • Open

    sbt 1.11.2 released
    submitted by /u/eed3si9n [link] [comments]
    Very newbie question, how do I include Play Json dependency in SBT?
    Hello, I'm learning Scala. I have the following in build.sbt (replaced project name and my username): scalaVersion := "3.7.1" name := "myappname" libraryDependencies += "com.typesafe.play" %% "play-json" % "3.0.4" And I got the following error: [info] welcome to sbt 1.11.1 (Oracle Corporation Java 24.0.1) [info] loading project definition from /home/amwojcik/Projects/traffcik/traffcik/project [info] loading settings for project traffcik from build.sbt... [info] set current project to traffcik (in build file:/home/amwojcik/Projects/traffcik/traffcik/) [info] Updating myappname_3 [info] Resolved myappname3_3 dependencies [warn] [warn] Note: Unresolved dependencies path: [error] sbt.librarymanagement.ResolveException: Error downloading com.typesafe.play:play-json_3:3.0.4 [error] Not foun…
    NEED help regarding overriding var from trait
    so im trying to override some variable from a trait to a class in scala but for some reason i cant get it to work. As an example my trait User{ var email: String} and im trying to get it into class Patient ( override var email: String) but the error i keep getting is error overriding variable email in trait User of type String ;variable email of type String cannot override a mutable variable. Ok ive realise that override is just for val not var, if so what should i use for my variables? submitted by /u/Disastrous_Cry_9161 [link] [comments]
    Weird Behavior Of Union Type Widening On Method Return Type
    Does anybody know whether this is a bug or purposely desigend so? The following code: enum E: case A case B case C type NotC = E.A.type | E.B.type def doSomething(): NotC = E.A extension (nu: NotC) def bee(): Unit = println("bee") @main def main(): Unit = val nu = doSomething() nu.bee() does not compile and give the error message: value bee is not a member of E. An extension method was tried, but could not be fully constructed: bee(nu) failed with: Found: (nu : E) Required: NotC nu.bee() Yet, this code: enum E: case A case B case C type NotC = E.A.type | E.B.type def doSomething(): NotC = E.A extension (nu: NotC) def bee(): Unit = println("bee") @main def main(): Unit = val nu: NotC = doSomething() nu.bee() compiles and works. It is weird because if the returned union type is supposed to be widened, why is annotating nu as NotC legal? Edit 1: So, it turns out the first code I provided works in Scala 3.7 though not Scala 3.6. After further testing, it appears that as long as the union type isn't inside a tuple, it works (in 3.7). That is, this works (using match instead of for loop is also ok): enum E: case A case B case C type NotC = E.A.type | E.B.type def doSomething(): Option[NotC] = Some(E.A) extension (nu: NotC) def bee(): Unit = println("bee") @main def main(): Unit = val nu = doSomething() for nu <- nu do nu.bee() While this does not (using match without type annotation instead of restructuring is also not ok): enum E: case A case B case C type NotC = E.A.type | E.B.type def doSomething(): (Int, NotC) = (1, E.A) extension (nu: NotC) def bee(): Unit = println("bee") @main def main(): Unit = val nu = doSomething() val (x, nnu) = nu nnu.bee() For transparency's sake I also fixed a typo in this iteration of editing. From compiler to compile. Edit 2: For some reason my `@` is replaced with `\u`. submitted by /u/MedicalGoal7828 [link] [comments]
  • Open

    Proposal: add Data.List.NonEmpty.mapMaybe :: (a -> Maybe b) -> NonEmpty a -> [b]
    submitted by /u/Bodigrim [link] [comments]
  • Open

    ob-llm (20250607.1452) --- Use `llm' as an Org Babel language
    The ob-llm package has been updated to version 20250607.1452.
    epx (20250607.1427) --- Manage and run project-specific shell commands
    The epx package has been updated to version 20250607.1427.
    tidal (20250607.855) --- Interact with TidalCycles for live coding patterns
    The tidal package has been updated to version 20250607.855.
    ebib (20250607.740) --- A BibTeX database manager
    The ebib package has been updated to version 20250607.740.
    bray (20250607.702) --- Lightweight modal editing
    The bray package has been updated to version 20250607.702.
  • Open

    How do I stop irrelevant holidays being displayed in Org-agenda when running `org-agenda-toggle-diary`?
    I've tried to include a custom diary Org file which includes things like family birthdays etc. This file includes the following: * Holidays :PROPERTIES: :CATEGORY: Holiday :END: %%(org-calendar-holiday) ; special function for holiday names   There are a lot of items in my usual Agenda view and some holidays aren't really relevant to me so I'd like to stop them from showing up.   But no matter what I do, like using (setq holiday-***-holidays nil), or even trying to do (setq calendar-holidays '((holiday ... with the list removing holidays I don't want, nothing seems to work.   Running M-x org-agenda then hitting D still leaves them in the agenda view. It's the same when the default calendar file is used.   The only thing I haven't tried is hardcoding holidays.el, which might be overkill but necessary. Is there a better way of doing this? submitted by /u/nonreligious2 [link] [comments]
    Slow fonts
    It is ‘open-fonts’ that is slow, then some 4406 fonts. Do you have even more? Note the font resize message. For your viewing pleasure. submitted by /u/Timely-Degree7739 [link] [comments]

  • Open

    Respect (some of) Vim's modelines in Emacs
    Hello all, While working on some projects that include files with Vim modelines (a bit like Emacs' file-local variables in the prop-line), I've written a package that parses and apply some of these options in Emacs. The package supports only a subset of Vim's modelines. Emacs 30 is needed (for built-in editorconfig, otherwise, you would need to install editorconfig separately). Any feedback is welcome! https://github.com/abougouffa/vim-modelines submitted by /u/abougouffa [link] [comments]
    What makes lisp better suited for emacs?
    I began thinking for a very long time that Emacs is rly a whole fricking desktop environment. I mean the editor and shell are written in elisp running in real time over an elisp repl, with many macros used to extend it in real time. I kinda then though of making an editor, as a side project, like Emacs that runs entirely on a repl so that you can extend it's functionality in real-time like elisp macros do. So I stated thinking, why Lisp. Why not any other interpreted languages like Perl, Lua, or even Python? What "superpowers" does lisp have over other languages in the scope of emacs like text-editors? Edit 2.0: Okay, I think I got the actual question. What makes lisp a better choice for an emacs implementation versus another repl language. I agree that lisp is kinda a norm/standard so ppl are more used to it, but on a language perspective why would lisp be better suited to make an emacs implementation in than say perl or python? Edit 3: Ommited edit 1.0 and rewrote everything above edit 2.0 based on a reply to a comment to clarify where my question is coming from. Now I think I finally got my real question across in a clear manner, hopefully. submitted by /u/multitrack-collector [link] [comments]
    nanosleep64 missing when running Emacs via Explorer?
    I have updated mingw64 packages today, and rebuilt Emacs from the lastest master. When trying to start Emacs via Explorer or a shortcut I get an error message saying it can't find procedure nanosleep64 in DLL emacs.exe. However, if I run it from the mingw console (command line) it starts fine. I have never seen that before. Have you experienced it? Any idea what is missing/not missing? Path issue? My OS or Emacs setup haven't changed more than that I updated mingw packages to get the latest GCC 15.1. After the update, the native compiler couldn't find libgccjit longer, so I had to recompile Emacs, and now this is the issue. I don't see anything on mingw/msys GH issues related to this, and I didn't found anything useful on the web other. submitted by /u/arthurno1 [link] [comments]
    Strange behavior of undo in evil mode
    Hey, I've recently noticed strange behavior of "undo" when editing, it looks like I'm typing a larger piece of text, correcting something, editing, etc., and by mistake I pressed which deleted the entire line, I do undo and instead of restoring the deleted line - it deletes the entire paragraph I just typed, as if it were undoing the previous typing and not deleting. Redo doesn't work well either, i.e. the entered paragraph is restored, but the mistakenly deleted text is unrecoverable... Alternatively, when I sometimes switch between windows, come back and not knowing what mode I'm in I type `:w`, it turns out that I typed text, so I instinctively do and suddenly the entire previously entered text disappears, not just the last two characters... A paragraph I've been writing for a long time and was 100% saved before!!! Interestingly, it doesn't always work this way, but often enough that it started to annoy me. Does anyone have an idea what this could be about? I'm using Emacs 29 on macOs with Doom and Evil mode submitted by /u/parasit [link] [comments]
    Using query-replace-regexp non-interactively with lisp expressions
    Hello there, lately I had this problem where I had to check all the files in my git repository, find occurrences matching with my-specific-regexp and add character '0' at the end of the line. I managed to do this with using this piece of code(called non-interactively): (project-query-replace-regexp my-specific-regexp "\\& 0") But now I am faced with slightly more complex problem. Now I have to find occurrences matching with my-specific-regexp-with-date-and-time, and based on the contents of the matched groups, I have to generate data to add at the end of these lines, for example: my_data_line 06.06.2025 10:12:00 From this line, I have to parse the date and time, change it to unix time, so time in seconds since 1970, so the replaced line, would look like this: my_data_line 06.06…
    I lost my config
    I accidentally bricked my OS by installing some faulty graphics drivers and went to reinstall, only to just now realize my emacs config was on there and I just lost it. Im so crushed. It took hours to config it right and now I have to start all over. Its gonna be easier because I know what im doing but im still gonna spend quite some time remaking it. This blows. submitted by /u/SergioWrites [link] [comments]
    Emacs Carnival: "Take Two". Blog about a shared Emacs topic this month, share with the month's host, enjoy community
    Blog carnivals are a fun community-building activity. With our love for Emacs, we will certainly find very diverse and creative takes on each month's topic. So a couple of us decided to make this happen :) I'm your host this month. 🙇‍♂️ Coordination is on EmacsWiki: Check out the EmacsWiki page, follow the link to the month's topic (that goes to https://christiantietze.de/posts/2025/06/emacs-carnival-2025-06-take-two/ this time), write about the topic on your personal blog, submit your blog post to the host (that's me for this month of June) Enjoy! submitted by /u/divinedominion [link] [comments]
  • Open

    How do I debug/inspect my code? (coming from Ruby/JavaScript)
    Hello, so when I code in Ruby, I have two ways of inspecting my code. I either use basic puts,and it nicely prints objects with their values. For example, I can write⁣ puts ["user1", "user2", "user3"] Also, I could use byebug, and then it opens REPL in the place I called it in code, basically like a breakpoint. Now my problem is, in Scala I don't see any way to inspect arrays and similar objects in a readable way. It shows them very nicely in Scala's REPL, but I don't want to use :load somescalafile.scala when I have things like package definitions and similar. I want to be able to print things with *println* in my code and still make it look very clear. At any point in code, like in a loop. I tried to use somearray.mkString(" ") on but it seems crude and also won't work for more complex examples. What's the right way to do it? EDIT: So you ask me for more examples and tooling. I use VS Code (but read about sbt below), and as for what I'm trying to achieve... Well, I'm very used to debuing my code with puts/console.log, and I'm quite effective with it. Also, i'm using sbt run for simple scripts. So that's why I want something reusable that I can always integrate into any project and just put in some loop like this: for x <- complexdata do println(x) but it can be Array[Array[(String, Int)]] or some other weird type. So you see, I don't want to code my own printing function for each of such complex data types. Also, debugger seems like overkill for such a simple task. SOLUTIONS SO FAR: II found this but seems a bit crude: debugging - Drop into interpreter during arbitrary scala code location - Stack Overflow @kbielefe mentioned Cats Show, could work as well. The best is @lianchengzju menion of PPrint and embedding Ammonite REPL submitted by /u/AlexSeeki [link] [comments]
    [Event] Functional World #18 | Better Scala Builds with the Mill Build Tool by Li Haoyi
    We’re wrapping up the season with one last Functional World meetup before the summer break! Join us on June 10 at 6 PM CEST on YouTube for a session with Li Haoyi, the creator of Mill and other popular Scala tools. This time, he’ll take us under the hood of Mill - a modern Scala build tool built as a practical alternative to SBT. Expect live coding, deep dives into the internals, and real-world tips on how to make your builds faster, simpler, and more predictable. If you’ve ever hit a wall with SBT, this session might just be the fix you’ve been looking for ;) More info on the website: https://scalac.io/functional-world/ submitted by /u/ComprehensiveSell578 [link] [comments]
    Scala first steps
    Hi Scala users, I'm more focused on the backend side than on data processing, so this is a bit challenging for me. Even though the solution might be simple, since it's my first time dealing with this, I’d really appreciate your help. I just learned about Scala today and I’d like to ask for your help. I’m currently working with a Snowflake database that contains JSON data. I need to transform this data into a relational format. Right now, I’m doing the transformation using a Stored Procedure with an INSERT ... SELECT block. This is fast, but I can’t handle exceptions on a row-by-row basis. When I try to use Snowflake Stored Procedures with exception handling inside a loop (to handle each record individually), the process becomes very slow and eventually times out. While researching alternatives, I came across Scala. My question is: Can Scala help me perform this transformation faster and also give me better control over error handling and data processing? submitted by /u/Terrible_Spirit_4747 [link] [comments]
  • Open

    APL Interpreter in Haskell
    submitted by /u/Veqq [link] [comments]
    Kan extensions: shifting Compose
    Kan extensions, are ways of "eliminating" Functor composition. Ran (right Kan extension) moves composition to the right. Lan (left Kan extension) moves composition to the left. These are basic properties of polymorphic functions. Compose F G ~> H = F ~> Ran G H F ~> Compose G H = Lan H F ~> G submitted by /u/Iceland_jack [link] [comments]
    How to use write a typeclass that has a uniquely determined type parameter (i.e. fundep or type family) AND can be neatly derived?
    -- Here is an example of a simple fundep. class X f a | a -> f where -- We can neatly derive an instance of X. data Person = Person { age :: Int, name :: String } deriving (X "name") -- The downside of X is that we have to carry around the f type parameter, -- even though it is uniquely determined by a. -- So let's rewrite with a type family: class X' a where type F a :: Symbol -- The downside of this approach is now writing the instance takes longer. instance X' Person where type F Person = "name" Is there either A. a way we can derive an instance of X' more concisely, similar to how we did that for X, or B. is there some way we can create a type synonym for X which does not include the type parameter f (since it is uniquely determined by a I don't want this extra parameter everywhere). Thank you. submitted by /u/grumblingavocado [link] [comments]
  • Open

    speed-type (20250606.2018) --- Practice touch and speed typing
    The speed-type package has been updated to version 20250606.2018.
    org-re-reveal (20250606.1856) --- Org export to reveal.js presentations
    The org-re-reveal package has been updated to version 20250606.1856.
    almost-mono-themes (20250606.1558) --- Almost monochromatic color themes
    The almost-mono-themes package has been updated to version 20250606.1558.
    ess (20250606.831) --- Emacs Speaks Statistics
    The ess package has been updated to version 20250606.831.
    most-faces (20250606.814) --- A List of Most Available Faces
    The most-faces package has been updated to version 20250606.814.
    evenok (20250606.812) --- Themes with perceptively evenly distributed colors
    The evenok package has been updated to version 20250606.812.
    markdown-mode (20250606.314) --- Major mode for Markdown-formatted text
    The markdown-mode package has been updated to version 20250606.314.
    ob-julia-vterm (20250606.47) --- Babel functions for Julia that work with julia-vterm
    The ob-julia-vterm package has been updated to version 20250606.47.
  • Open

    rational for filename procedure
    Good morning, According to you thoughts and experiences, I was wondering what is the advantage of including anything else other than a UID in the filename of a note? In a text editor (I use zettlr, I do not know how The Archive works), you can request to have the title - or the level 1 header - to be displayed as the name of your file within that text editor. ), I would not go through my zettelkasten folder, on my computer, to look for a note. What is thus the added-value of having a short title or keywords added to the UID of my filename? Thanks a lot  ( 3 min )
    The Zettelkasten Method for Hindu Philosophy • Zettelkasten Method
    The Zettelkasten Method for Hindu Philosophy • Zettelkasten Method A video recording where I coach using the Zettelkasten Method to study Hindu Philosophy, a topic where you can easily go in depth and need to break up notes as they grow. Read the full story here  ( 2 min )

  • Open

    general (20250605.2148) --- Convenience wrappers for keybindings
    The general package has been updated to version 20250605.2148.
    oer-reveal (20250605.1848) --- OER with reveal.js, plugins, and org-re-reveal
    The oer-reveal package has been updated to version 20250605.1848.
    matlab-mode (20250605.1434) --- Major mode for MATLAB(R) dot-m files
    The matlab-mode package has been updated to version 20250605.1434.
    realgud (20250605.1143) --- A modular front-end for interacting with external debuggers
    The realgud package has been updated to version 20250605.1143.
    kkp (20250605.1143) --- Enable support for the Kitty Keyboard Protocol
    The kkp package has been updated to version 20250605.1143.
    casual (20250605.340) --- Transient user interfaces for various modes
    The casual package has been updated to version 20250605.340.
  • Open

    emacs and nix (os)
    so I've been an Emacs user for about a year but a few months ago I switched to nix os, and that made me interested in moving part of my Emacs config to nix, of course I don't expect to ever have my entire config in nix due to the limitations it has over elisp but I was curious if anybody has written or integrated their Emacs config into their nix config and if so in what way? also is there a way to manage Emacs packages through nix?, and if so is the package list complete enough? how about packages not on Melpa and such? (sharing your config as an example would also be apprciated!) thanks in advance! submitted by /u/Lunibunni [link] [comments]
    Getting prefix key error when setting evil keybindings
    Hi, I'm trying to set up pair of keybindings for tab-previous and tab-next commands as follows: (evil-define-key nil 'global (kbd "t j") 'tab-previous) (evil-define-key nil 'global (kbd "t k") 'tab-next) I end up with the error message "Key sequence t j starts with a non-prefix key t". I was wondering how I could use these bindings. As such, t is not bound to any keybindings. Thanks in advance! submitted by /u/kn0xchad [link] [comments]
    I'm trying to use gptel on Emacs and systematically save the conversation instead of using ChatGPT's and Perplexity's apps. The apps seem free but through the API key the service cannot be used for free, are there free providers that have the same quotas from API keys than they do from the app ?
    Any advice regarding the use of gptel or emacs for AI is appreciated, thanks ! submitted by /u/acodingaccount [link] [comments]
    Linus Torvalds' MicroEMACS text editor - first look
    submitted by /u/nmariusp [link] [comments]
    Beyond just pre-packaging a collection of packages, what else does Doom do?
    I really like the "doom sync", "doom gc", etc. commands. It's nice to run these commands have it clean up everything. Additionally, I like the package!, after! macros. So my config looks really tidy when I want to add a custom package and have it do something after it's loaded. I'm wondering what else it does. Is there something else out there that has these type of commands and macros but is a lot more lightweight? submitted by /u/surveypoodle [link] [comments]
    Discrete syntax in emacs org-mode
    Is there a "discrete syntax" feature for org in emacs? Where we can view the typesetting format of a document in an org buffer while its open, and have the syntax dynamically appear when inserting text? I like to look at how pretty my document is while editing. submitted by /u/Bi-Jean [link] [comments]
    Using existing LLM tools for code review
    Does anyone know how to use existing LLM tools with emacs for code review ? For e.g. I've a branch where some features were added. Before merging the changes from this branch I would like to use one of the LLM tools to go through the changes and provide feedback on best practises etc. Is this currently possible with the existing tools like Aidermacs, gptel, ollamabuddy etc ? Does anyone have a workflow which addresses this ? I would really be interested. Thanks in advance. submitted by /u/wilsonalmeida [link] [comments]
  • Open

    [ANN] ollama-haskell v0.2.0.0 Release!
    I'm thrilled to announce the release of ollama-haskell v0.2.0.0, a Haskell client for interacting with the Ollama API. This release brings a bunch of exciting new features and improvements to make your experience with Ollama even smoother and more powerful. 🎉 What's New in v0.2.0.0? Thinking Option: Control model reasoning with the new think flag. Unified Config: Streamlined OllamaConfig for consistent API settings. Common Error Type: Centralized OllamaError for robust error handling. Better Tool Calls: Enhanced and tested tool calling support. JSON Schema DSL: Tiny DSL for easy structured output schemas. Improved Functions: Upgraded deleteModel, push, and showModel APIs. A huge thank you to our awesome contributors: andrevdm mimi1vx jhrcek Your insights and contributions have been invaluable in shaping this release! GitHub: Check out the source code and examples at ollama-haskell Hackage: Install the package via hackage Please dive into the examples, try out the new features, and let me know your thoughts! Feedback, bug reports, and contributions are always welcome. submitted by /u/Worldly_Dish_48 [link] [comments]
    Looking for a senior software engineer to join Converge
    Hellooooo! I'm looking for a senior software engineer to join our team at Converge. We're building a major part of our core platform in Haskell (there are other languages involved too -- we're transitioning), so what better place to find people than in here? So, if you're interested in joining us in our mission to help the construction industry build a net-zero future more efficiently, then check out the job spec below, and if you're at ZuriHac come find me (I'll probably be wearing a Converge tshirt). https://join-converge.notion.site/Senior-Software-Engineer-L4-1e0a315b1b0080649c90c721efa19751 submitted by /u/gtf21 [link] [comments]
    What Works (and Doesn't) Selling Formal Methods
    submitted by /u/gallais [link] [comments]
    Я ☞ Structural wrapper subtyping
    Next chapter on implementation details of Я: wrappers that form hierarchy of subtyping relations. It's a way to describe stateful computations and recursive data structures. submitted by /u/iokasimovm [link] [comments]
  • Open

    Scala Dev needed
    Our company is on a lookout for a talented Scala dev in Europe for an AdTech product. Fully remote position, B2B contract. Here's the JD, feel free to apply: https://careers.eskimi.com/jobs/5855533-backend-developer submitted by /u/Any-Drag-6151 [link] [comments]
  • Open

    Issue 475
    Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community. Featured Я ☞ Structural wrapper subtyping by Murat Kasimov There are only 5 real types in Я: Void, Unit, Sum, Product and Arrow. That’s it! In this chapter I’m going to describe how to use them, how to wrap/unwrap them and why they are important. Abstracting storage details with Effectful by Frederick Pringle How we can use algebraic effects to separate our storage definitions from their implementations. Announcing Ecosystem Partnerships by José Manuel Calderón Trilla The Haskell Foundation is pleased to announce a new initiative: Ecosystem Partnerships. These are joint efforts between the Haskel…  ( 2 min )

  • Open

    Redefining Stream Composition with Algebraic Effects by Adam Hearn
    submitted by /u/fwbrasil [link] [comments]
    Use generic type parameter in pattern matching?
    I'm writing a simple recursive descent parser for a toy language. I specifically want to write everything myself and not use parser combinators, both for learning purposes and because I want very specialized error messages for missing tokens. My attempt on writing parts of the parser initially looks like this: def peek() = ...return next token without consuming it... def eat[T None // Warning: the type test for T cannot be checked at runtime because it refers // to an abstract type member or type parameter case Some(token: T) => advanceToNextToken() Some(token) // Parses lines like "var foo = 123 + 456" def parseVariableDeclaration(): Option[VariableDeclaration] = val parts = for _ VariableDeclaration(name, value) }) As you can see, there is a warning from Bloop when trying to use T in pattern matching, which makes me think that my code is unidiomatic. I have a few questions: How can I idiomatically write that eat routine to accept the type of the token I want and returns its Option[...]? Is there a good way to simplify that last parts.map({ case ... }) to avoid writing (name, value) twice? In general, is using for the most idiomatic way of writing such a sequence of operations, where I want the next steps to fail if the previous Options are None? Would it still work if I used Either or Try instead of Option? Thanks! submitted by /u/smthamazing [link] [comments]
    Experiments in SIMD
    I've been having some fun with Java's incubating SIMD API. https://docs.oracle.com/en/java/javase/24/docs/api/jdk.incubator.vector/jdk/incubator/vector/package-summary.html And from what I can tell, the results are quite promising. I put together a benchmark of some common linear algebra type operations vs [breeze](https://github.com/scalanlp/breeze) for operations on a pair of 500 x 500 matricies, and I (might have) gotten about a 50% performance boost from my SIMD implementation *** ``` Benchmark (matDim) Mode Cnt Score Error Units LinearAlgebraWorkloadBenchmark.breezeWorkload 500 thrpt 3 2002.944 ± 284.520 ops/s LinearAlgebraWorkloadBenchmark.vecxtWorkload 500 thrpt 3 2957.596 ± 424.765 ops/s ``` The benchmark itself is here; https://github.com/Quafadas/vecxt/blob/main/benchmark_vs_breeze/src/doSomeStuff.scala and it is intended to be a good faith, nose to nose comparison of common linear algebra type operations. If you think it isn't, or is otherwise unfair somehow, let me know (in my rudimentary checks, it gets the same results, too). Benchmark sets out to do things like; - matrix addition - sum of elements in a matrix - max element in vector - matrix * vector - elementwise manipulation and elementwise matrix (Hadamard) multiplications - norm Which are all operations that are "natural candidates" for such optimisation. The benchmark is obviously incomplete vs breeze's large API surface area. Initial benchmarks resulted in great sadness, after inadvertently calling stdlib, "boxy" methods, resulting in a a tiny blog post to aid the memory of my future self. https://quafadas.github.io/vecxt/docs/blog/2025/06/04/Performance%20Perils.html My conclusion is that java's SIMD is promising. It might be useful today if you are in a performance sensitive domain that can be expressed in arrays of primitives. *** as with all things performance YMMV and your workload might be different. submitted by /u/quafadas [link] [comments]
    Scala implementation of Micrograd. A tiny scalar-autograd engine and a neural net implementation.
    submitted by /u/SubMachineGhast [link] [comments]
  • Open

    I switched from a bullet journal to org mode 18 months ago -- here's my +/-
    The scheme: I'm using Doom Emacs. I use org-roam, and org-roam-dailies. I have a 'todo.org' file, and then some subject specific files in 'org-roam/' (but not many, honestly). Mostly, I work out of my 'daily' page. Sometimes I record a diary/journal, and sometimes I don't. I write down my plan and intentions for the day in my daily page, and I have a separate section in the daily page to use as an inbox/do later list. If I need to carry over tasks from the previous day, I copy them over and mark the old task with '>>>>' just like I would in a bullet journal. 90% Of my tasks never get recorded in the todo file. I have some technical/programming ability, but not a lot of time, so I obviously haven't tinkered much. Things I love: Collapsible, hotkeyed outlining. I miss being able to effor…
  • Open

    shadowenv (20250604.2048) --- Shadowenv integration
    The shadowenv package has been updated to version 20250604.2048.
    ob-pic (20250604.2027) --- Org babel functions for pic language -*- lexical-binding: t;
    The ob-pic package has been updated to version 20250604.2027.
    gvpr-mode (20250604.1329) --- A major mode offering basic syntax coloring for gvpr scripts
    The gvpr-mode package has been updated to version 20250604.1329.
    magik-mode (20250604.1150) --- Emacs major mode for Smallworld Magik files
    The magik-mode package has been updated to version 20250604.1150.
    dicom (20250604.850) --- DICOM viewer - Digital Imaging & Communications in Medicine
    The dicom package has been updated to version 20250604.850.
    twtxt (20250604.516) --- A twtxt client for Emacs
    The twtxt package has been updated to version 20250604.516.
  • Open

    Multi cursor's mc/insert-numbers iserts too many number.
    Am I doing something wrong? I normally use macros to add consecutive numbers, but I wanted to try multiple cursors, since it should take less keystrokes. However, when I used mc/insert numbers with a cursor at the end of each line, for a bufer with 6 lines containing a single "a" character I get this: a0 a16 a27 a38 a49 a510 It confused me at the start but I can see that it numbered currectly from 0 to 5, then continued numbering in the second cursor 6 up to 10 stopping there. This is unusable, and I went back to use macros for numbering, but I don't know if anybody else sees this, and if there is a fix for this, or maybe I am doing something incorrectly. For reference, I am running on Windows 11, on emacs 30.1 (I tried with v29.4 with the same result), and mc version 20241201.1841, I am running the Windows version of EMACS not the linux version using WSL2. I found nothin related to this when I Googled it, except for an unanswered question from 8 years ago, which seemed similar but no the same. submitted by /u/maufdez [link] [comments]
    I got this Valentine
    submitted by /u/noddlaerspeams4 [link] [comments]
    Need help setting up treesitter
    the first image is emacs default syntax highlighting in in c-mode with ef-dark theme the second image is with c-ts-mode enabled as you can see the difference is only in the \n escape character, everything else is exactly the same, my main reason for using c-ts-mode is because i wanted to highlight function and variables callings without configuring it with regexs looking at the official website i see that it's doing it intentionally as in the third image attached, so i figured that there has to be a way to easily customize that option but i was unable to find it submitted by /u/Fate_sc [link] [comments]
  • Open

    Designing a good Type / Data Structure
    I have been using Haskell for a while, but mostly for relatively small tasks or math based programming. I am currently writing a Blackjack solver, and I am designing my Hand type. If you don't know any blackjack, you have two cards you know, and the dealer has 1 card you know and 1 card hidden. You can either hit (take an additional card) or stay (end your turn). There are more complex plays but I want to add those later. The goal is to get as close to 21 without going over (going over is called a bust and you lose immidiately). The dealer does not get a choice in their play, so its really a player vs algorithm game and player strategy can be optimized. I find it a statistically interesting game. The Hand data structure could just be the list of cards and that gives me all the information, but I fell like that is not going to let me take advantage of the nice pattern matching Haskell allows for. My naive approach was to have Haskell data Hand = Bust | Hand [Card] | Blackjack but this will not work when I add more complex rules or analysis that needs to know what cards are being used. Besides, technically Hand 22 0 4 is a Bust and I dislike that I have multiple ways to write the hand. Is there a blog, chapter. or advice on designing types that are more likely to scale well and are less prone to introducing bugs from decoherence of what is what? submitted by /u/El__Robot [link] [comments]
    [ANN] haskell-google-genai-client: API Client for Google Gemini
    Hello, I created a low-level Haskell library for Google Gemini API (also known as GenAI API or Generative Language API). While I originally built it for personal use only, I decided to share it for anyone interested to use Google Gemini model. Hope Haskell ecosystem embraces more AI-related stuff! submitted by /u/sonowz [link] [comments]

  • Open

    I’m a programmer, but I’m not quite sure how to effectively apply the Zettelkasten method in my work
    Hello. I am Korean. First of all, I am a programmer. I am currently trying to build a PKM (Personal Knowledge Management) system using the Zettelkasten method. Although I understand most of the core concepts, I still struggle to grasp how to apply it effectively from a programmer’s perspective. Previously, I used Tiago Forte’s PARA method to take notes, and I was fascinated by the idea of writing documents in a style similar to Wikipedia. However, I realized that I was not gaining as much as I expected from that approach. In my pursuit to become a better developer, I began looking for a new method—and eventually returned to the Zettelkasten approach, which I had tried before but failed to stick with. Now, I’m giving it another serious attempt. The following is one of my PARA-style document…  ( 6 min )
    How to apply Bob Dotos method
    I just got Bob Dotos book, which is already making the ZK method easier to understand than Sonkes book, and most other videos, etc. I'm going to create a paper based ZK on 5x8 cards to avoid digital overwhelm. I really like this guy's setup and would like something similar using Bob's book. I'm just confused with the index Bob's mentions in his book vs how the guy uses the index folder in his system. Bob talks about how to put fleeting notes into the index to check later. Whereas the guy has these index cards that are alphabetically separated. Are the two of them using the word index in different contexts? EDIT: The guy starts talking about the index in his zettelkasten box at 26:45 Thanks!  ( 2 min )
  • Open

    Best practices for interacting with JIRA from within Emacs
    I'm curious about best practices in actually effectively working with JIRA from within Emacs. I've dabbled with what's out there, but it's a lot of here's this package or that package to connect to JIRA and not a lot of "this is the workflow that works for me." Don't get me wrong, what's out there is great work, but I'm hoping to start a thread that talks about what works and what doesn't. Selfishly to save me time in figuring that out :) (Links to past threads below). I'm curious about real uses like pulling all issues for an epic and populating an org-table on their status; or pulling an issue by board/number along with its full comment thread and then posting back a new comment... Thanks in advance. https://www.reddit.com/r/emacs/comments/1kmjbho/new_package_eljira_an_emacs_interface_for_jira/ https://www.reddit.com/r/emacs/comments/1jdhuxc/jirael_emacs_integration_for_atlassians_jira/ https://www.reddit.com/r/emacs/comments/a1gk0a/emacs_jira_integration_with_ejira/ https://www.reddit.com/r/emacs/comments/qy8z9r/anyone_using_orgjira_with_any_success_with_the/ submitted by /u/ProfJasonCorso [link] [comments]
    major mode hook to replace individual characters on save? I really don't need unicode quotes or dash characters when 7 bit will do.
    Not sure how to implement this, but for my daily scratch/todo/scribbling files I'd really like a save hook that had a translation list of unicode to 7 bit characters to replace on the way to disk so I don't get the encoding problem interrupt unless absolutely necessary. For complex stuff it's fine if it goes through, then I can change the encoding to utf-8 ad hoc or something. But for everyday nonsense it just gets up my...err..."irks me." The files and modes are specific enough that I could hook it selectively enough not to be worried about blasting real data of any kind. submitted by /u/frobnosticus [link] [comments]
    Transient setup for Denote
    This is my personal transient menu for Denote. Fairly standard stuff I think; the one super-custom bit of it is the aw/notes-this-day function, which walks through the file tree looking for notes that are from the current day in previous years and dumps them into one big file for review. I use this to help me remember things I was thinking about in past years w/o having to search explicitly for some particular content. To save you a click, here's the config: ```emacs-lisp (transient-define-prefix denote-transient () "Denote dispatch" [["Note creation (d)" ("dd" "new note" denote) ("dj" "new or existing journal entry" denote-journal-new-or-existing-entry) ("dn" "open or new" denote-open-or-create) ("dt" "new specifying date and time" denote-date) ("ds" "create in subdirectory " denote-sub…
    Things like downloading Internet images from Dired, instead of Thunar/Dolphin and etc?
    hi! something i was wondering was this : is it possible to use Emacs and Dired to do things like downloading an image from the internet, uploading a file onto a chatroom and so on? i looked this up but didn't find anything very conclusive other than https://lynn.sh/guix-emacs-file-manager.html which didn't seem to work out super well for me, esp as i'm not on Guix and tried to cook up a .desktop file that may or may not be correct. that's all haha, hope everyone is doing well! submitted by /u/arni_ca [link] [comments]
    Frustrating Behavior from Corfu
    Auto-completing with Corfu will often leave me with dangling garbage, as the video clip shows. Am I missing a configuration somewhere? submitted by /u/Snoo_26157 [link] [comments]
    IT Forcing Switch To VS Code
    Hi everyone! I’ve been told by IT / management this morning that I have to switch over to VS Code because our team is now required to use special AI plugins to help us write code. With that being said I’ve done some research into making VS Code as Emacs like as possible. Does anyone personally have any experience in this field? Or any helpful tips / tricks for me? Some of the main things I’m looking for are 1. Minimal aesthetic 2. Keyboard driven interface 3. Good window management, being able to switch windows quickly 4. Good terminal integration, multiple terminal sessions 5. Code searching, regex replace I’ve been an evil user as well so I’m planning on installing the vim plugin as a starting point. Edit: So I ended up speaking with my manager and IT and they basically said that Emacs wasn’t secure enough / the company that we pay for this AI solution won’t make an Emacs package. So they said as long as I can find an editor that the company will support I can use that. Guess I’m off to using Neovim… At least that way I can maintain some semblance of my old workflow. submitted by /u/LegO_Grievous__ [link] [comments]
    Tree-sitter powered code completion
    Tree-sitter has more usages than font-locking and indentation. This article shows how easy it is to build a simple completion source from the Tree-sitter AST. submitted by /u/bozhidarb [link] [comments]
    Little known macOS keybindings
    Even I end up learning "new" things about Emacs after using it for over 20 years. :D The name of the article might be a misnomer, just because I'm so used to the default keybindings and it never crossed my mind to check if on macOS there were some accommodations for the common OS-style keybindings. submitted by /u/bozhidarb [link] [comments]
    dap-debug: Configuration listed as nil
    Hi, I'm a java developer and am relatively new to Emacs. I've been trying to configure dap debug for remote debugging using attach. My launch.json file's in the project root and the content's below: "version": "0.2.0", "configurations": [ { "type": "java", "name": "Test App Debug (Attach)", "projectName": "MyTestApp", "request": "attach", "hostName": "localhost", "port": 8000 } ] When I bring up dap-debug, it shows the launch configuration entry as nil: https://preview.redd.it/05ul5g0xpn4f1.png?width=333&format=png&auto=webp&s=a6f09d9cd930b4a726dd8432bcf9e82476a31936 When I try to use it, it says: nil does not specify :type Would you help me identify what's wrong? submitted by /u/sZar_who [link] [comments]
    Are you holy or evil?
    I've used vim (and then neovim) for years. Coming from that universe, Evil mode made more sense when I switched to Emacs. However, there has always been a small annoyance: typing or pressing a key sequence in the wrong mode and then unwanted things happening. This isn't going to be a problem in Holy mode, so I'm thinking if I should abandon Evil. I'm curious how what most people use. submitted by /u/surveypoodle [link] [comments]
    Fortnightly Tips, Tricks, and Questions — 2025-06-03 / week 22
    This is a thread for smaller, miscellaneous items that might not warrant a full post on their own. The default sort is new to ensure that new items get attention. If something gets upvoted and discussed a lot, consider following up with a post! Search for previous "Tips, Tricks" Threads. Fortnightly means once every two weeks. We will continue to monitor the mass of confusion resulting from dark corners of English. submitted by /u/AutoModerator [link] [comments]
    Modern emacs packaging conventions
    Ive been using emacs for a while, and I want to write a package. Problem? I cant really find any information on how to package my code properly. Looking at a couple packages im not noticing a lot of common patterns. Is there any documentation on this? submitted by /u/SergioWrites [link] [comments]
    Neovim refugee, is doom emacs right for me?
    Before anyone gets mad, this isn't a "convince me to use emacs post". I've looked through a bunch of these sorts of posts, and I decided I wanted to use doom emacs. It looks perfect on paper and after trying it out a bit I really like it. However, something I rarely see discussed about doom emacs is how "just works" or not it is. I wanted to ask the people of this subreddit if something like doom emacs gets close to "just works". Reason I'm asking is because I fell in love with Neovim with my own home grown config, but grew more and more annoyed with it breaking. I felt like to obtain the stability I wanted I needed to go barebones. I also like configuring my editor but not that much. Once I had a project due and I ran into issues with plugins breaking. So? Why not use VSCode? I inexplicably hate it, hate the UI, hate how vim/keyboard only is a second class citizen (doom's default evil mode is heaven compared to whatever you can do in VSCode/intellij), I just don't like using it. Jetbrains is fine but still clunky for me. Meanwhile, doom emacs at first glance has just my style of UI. If hypothetically doom emacs were on the same same level of stability as VSCode (or even 80% for that matter), it would be my dream editor. I just have no idea though, I haven't found many anecdotes online or here. In summary, is emacs (or doom emacs) prone to breaking like neovim is? Do I have to baby it? If not, sweet! If so, IDK I guess I'll keep hunting for other editors. submitted by /u/pachungulo [link] [comments]
    Tree-sitter documentation and its context within completions.
    Hello I need help. Im feeling at total loss in utilizing tree-sitter. Actually, Im perfectly happy with my setup. I use both Emacs28 and Emacs29. Using my compiled 29 in my free time to incrementally to move to a better workflow using tree-sitter. And both 28 and 29 using the same config with conditionals to differentiate between minor parts. The problem is that I dont entirely understand tree-sitters purpose in the context of competions (like company-mode or elpy-mode). And I also dont know where to even start to read this stuff online. All tree-sitter docuementations make no focus on completions, but talks a lot about navigating the concrete syntax tree. I also did not spend enough reading on completion backends as I have other stuff to read, and was not expecting to be reading so much on combobulate (my Emacs itself is a Knowledge Management System) My main motivation is mostly faster completion, as elpy is rather slow (1/2 second or even 1 second). I might be looking at the problem from a completely wrong angle. But if it means Im moving to a workflow 10 times better using combobulate, Im perfectly happy to learn. (Combobulate and tree-sitter seems very cool upon reading it) Any tips, on what to read when moving to a completion that uses tree-sitter since its faster? submitted by /u/Ardie83 [link] [comments]
  • Open

    bm (20250603.2137) --- Visible bookmarks in buffer
    The bm package has been updated to version 20250603.2137.
    jsonp (20250603.2133) --- Resolve JSON pointers in ELisp objects
    The jsonp package has been updated to version 20250603.2133.
    purescript-mode (20250603.1712) --- A PureScript editing mode
    The purescript-mode package has been updated to version 20250603.1712.
    mini-echo (20250603.1543) --- Echo buffer status in minibuffer window
    The mini-echo package has been updated to version 20250603.1543.
    circom-mode (20250603.929) --- Major mode for editing Circom circuit
    The circom-mode package has been updated to version 20250603.929.
    addressbook-bookmark (20250603.618) --- An address book based on Standard Emacs bookmarks
    The addressbook-bookmark package has been updated to version 20250603.618.
    rebecca-theme (20250603.428) --- Rebecca Purple Theme
    The rebecca-theme package has been updated to version 20250603.428.
  • Open

    Issues with `instance Ord (STRef s a)`
    submitted by /u/reconcyl [link] [comments]
    [Well-Typed] Funding the Haskell toolchain with Ecosystem Support Packages
    submitted by /u/adamgundry [link] [comments]
    Zero-Cost 'Tagless Final' in Rust with GADT-style Enums
    submitted by /u/Accembler [link] [comments]
  • Open

    Using scala despite capture checking
    Once capture checking starts becoming more of a thing, with all the new syntax burden and what I expect to be very hard to parse compiler errors, that I'll keep using scala despite itself frankly. I imagine intellij is just going to give up on CC, they already have trouble supporting one type system, I don't imagine they are going to add a second one and that it'll all just play nice together... Then thru my years working with scala, mostly I've never really cared about this, the closest was maybe when working with spark 10 years ago, those annoying serialization errors due to accidental closures, I guess those are prevented by this? not sure even. Then things that everyone actually cares about, like explicit nulls, has been in the backburner since forever, with seemingly very little work version to version. Anybody else feels left behind with this new capture-checking thing? submitted by /u/randomname5541 [link] [comments]
    Scala code parser with tree_sitter
    I wanted to build python package to parse scala code. After initial investigations, I found this repo https://github.com/grantjenks/py-tree-sitter-languages. Tried to build and getting error. python build.py build.py: Language repositories have been cloned already. build.py: Building tree_sitter_languages/languages.so Traceback (most recent call last): File "/Users/mdrahman/PersonalProjects/py-tree-sitter-languages/build.py", line 43, in Language.build_library_file( # Changed from build_library to build_library_file ^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: type object 'tree_sitter.Language' has no attribute 'build_library_file' Tried to install through pip, not successful either: pip install tree_sitter_languages Tried to build from https://github.com/tree-sitter/tree-sitter-scala which is official tree-sitter, I couldn't built it too. In this case, with `python -m build` command generates .tar file but no wheel. It is showing error that no parser.h but it is there in my repo. src/parser.c:1:10: fatal error: 'tree_sitter/parser.h' file not found 1 | #include "tree_sitter/parser.h" | ^~~~~~~~~~~~~~~~~~~~~~ 1 error generated. error: command '/usr/bin/clang' failed with exit code 1 I got frustrated, anyone tried ?? Is there any other way to parse? submitted by /u/mosh2i [link] [comments]
    Using images with ScalaJS and Vite
    If you use Vite and want to reference to image assets in your ScalaJS code, this won't work: scala object Images { @scalajs.js.native @JSImport("./images/ms_edge_notification_blocked.png", JSImport.Default) def msEdgeNotificationBlocked: String = scalajs.js.native } ScalaJS generates import * as $i_$002e$002fimages$002fms$005fedge$005fnotification$005fblocked$002epng from "./images/ms_edge_notification_blocked.png"; and Vite isn't happy about that: ``` [plugin:vite:import-analysis] Failed to resolve import "./images/ms_edge_notification_blocked.png" from "scala_output/app.layouts.-Main-Layout$.js". Does the file exist? /home/arturaz/work/rapix/appClient/vite/scala_output/app.layouts.-Main-Layout$.js:2:92 1 | 'use strict'; 2 | import * as $i_$002e$002fimages$002fms$005fedge$005fnotifi…
    Announcing Summer of Scala Code'25 by Scala India | Open for all
    Hello to the Scala Community! Announcing Summer of Scala Code'25 (SoSC'25) by Scala India! 75-day coding challenge focused on solving 150 LeetCode problems (Neetcode 150), designed to strengthen your problem-solving and Scala skills this summer. Whether you're a beginner eager to master patterns or a seasoned developer brushing up on your Algorithms in Scala, approaching Algorithms in Scala can be different from the standard approach, so join in the journey together! Everyone is welcome to join! English is going to be the medium of language Steps Make a copy of the Scala Summer of Code'25 sheet https://docs.google.com/spreadsheets/d/1XsDu8AYOTyJSMPIfEjUKGQ-KQu942ZQ6fN9LuOBiw3s/edit?usp=sharing, Share your sheet on ⁠sosc25 channel at Scala India Discord! Discussions, solution sharing and more aswell on the channel (Link to scala India discord - https://discord.gg/7Z863sSm7f) Questions curated are divided topic-wise wise which will help to maintain the flow and are clubbed together for the day, keeping difficulty level in mind, Question links are there in the sheet along with other necessary columns, Solve and submit your solution! Don't forget to add the submission link to the sheet. Track your progress, establish your own speed, cover up topics later if missed - all together in the community Starting from 3rd June, Lets stay consistent submitted by /u/siddharth_banga [link] [comments]
    explicit end block
    I'm a long-time Scala developer, but have only just started using Scala 3, and I love its new syntax and features, and the optional indentation-based syntax-- in particular the ability to have explicit end terminators I think makes code much more readable. There is one aspect I do not like; however, the inability to use explicit end blocks with an empty method returning Unit: def performAction(): Unit = end performAction The above is illegal syntax unless you put a () or a {} placeholder in the body. Now I understand Scala is an expression-oriented language-- I get it, I really do, and I love it-- and allowing the above syntax might complicate an elegant frontend parser and sully the AST. I also understand that maybe my methods shouldn't be long enough to derive any readability benefit from explicit end terminators, and that the prevalence of all these Unit-returning side-effecting methods in my code means that I am not always embracing functional purity and am a bad person. But in the real world there are a lot of Unit-returning methods doing things like setting up and tearing down environments, testing scaffolds, etc-- to enable that elegant functional solution-- and often, these methods see hard use: with the whole body being commented out for experimentation, an empty stub being created to be filled in later, and generally being longer than average due to their imperative natures, so they benefit heavily from explicit end terminators, but requiring an explicit () or {} temporarily is a real inconvenience. What do people think-- should the above exception be allowed? submitted by /u/PopMinimum8667 [link] [comments]

  • Open

    inform-mode (20250602.2351) --- Major mode for Inform 6 interactive fiction code
    The inform-mode package has been updated to version 20250602.2351.
    evil-keypad (20250602.2127) --- Modal command dispatch for evil-mode
    The evil-keypad package has been updated to version 20250602.2127.
    jedi (20250602.2107) --- A Python auto-completion for Emacs
    The jedi package has been updated to version 20250602.2107.
    envrc (20250602.1734) --- Support for `direnv' that operates buffer-locally
    The envrc package has been updated to version 20250602.1734.
    mastodon (20250602.1416) --- Client for fediverse services using the Mastodon API
    The mastodon package has been updated to version 20250602.1416.
    yasnippet (20250602.1342) --- Yet another snippet extension for Emacs
    The yasnippet package has been updated to version 20250602.1342.
    indent-control (20250602.1131) --- Management for indentation level
    The indent-control package has been updated to version 20250602.1131.
    company-fuzzy (20250602.1018) --- Fuzzy matching for `company-mode'
    The company-fuzzy package has been updated to version 20250602.1018.
    jedi-core (20250602.913) --- Common code of jedi.el and company-jedi.el
    The jedi-core package has been updated to version 20250602.913.
    nerd-icons-grep (20250602.845) --- Add nerd-icons to grep-mode
    The nerd-icons-grep package has been updated to version 20250602.845.
    mozc (20250602.713) --- Minor mode to input Japanese with Mozc
    The mozc package has been updated to version 20250602.713.
    anki-editor (20250602.612) --- Minor mode for making Anki cards with Org
    The anki-editor package has been updated to version 20250602.612.
    uniline (20250602.522) --- Add ╭─╴UNICODE╶─╮ based ╭─╴diagrams╶─╮ to ╭▶╴text files╶●╮
    The uniline package has been updated to version 20250602.522.
    khoj (20250602.352) --- Your Second Brain
    The khoj package has been updated to version 20250602.352.
    esb (20250602.218) --- Emacs Simple Bookmark
    The esb package has been updated to version 20250602.218.
    aidermacs (20250602.203) --- AI pair programming with Aider
    The aidermacs package has been updated to version 20250602.203.
  • Open

    For those hiring Haskell developers - where do you find them?
    Hi everyone! I work in tech hiring (building a global community to train people in Haskell + soft skills) and I'm trying to better understand how companies go about hiring Haskell developers. If you’ve hired for Haskell roles recently—or are hiring now—I’d love to know: Where do you usually source or find Haskell talent? (Job boards, communities, referrals, etc.) Are there any specific platforms or strategies that have worked particularly well (or not)? Do you find it harder to hire Haskell devs compared to other languages? I'm curious if Haskell companies use different methods than the more common/popular languages or if companies are struggling to find the right talent pools. Any insight would be super helpful, and I’d be happy to share back what I learn. submitted by /u/ace_wonder_woman [link] [comments]
    List Unfolding - `unfold` as the Computational Dual of `fold`, and how `unfold` relates to `iterate`
    submitted by /u/philip_schwarz [link] [comments]
    How to build a regex engine
    Hi Good Morning! I want to build a regex engine. From what I was able to see, there are many specs of how a Regex can be, and there are many ways to implement it on a string. To get started, I was thinking to start with the BRE that gnu grep uses by default, but I have no idea how to approach this problem. I have just completed Cis 194 2013 course, and would like to enhance my skills. PS: I made a JSON Parser, as it was relatively a simple structure to put it in, just saw the BNF and was able to translate it with Haskell ADTs. submitted by /u/kichiDsimp [link] [comments]
  • Open

    List Unfolding - `unfold` as the Computational Dual of `fold`, and how `unfold` relates to `iterate`
    https://fpilluminated.org/deck/263 submitted by /u/philip_schwarz [link] [comments]
    sbt 1.11.1 released
    submitted by /u/eed3si9n [link] [comments]
  • Open

    What is happening in your ZK journey this week? 2025.06.02
    Swimming with Ideas This is another opportunity to share your current project with fellow forum members. Add to this discussion by sharing your experience with your zettelkasten journey. Share with us what you're learning. Sharing helps us clarify our goals and visualize our thinking. And sometimes, a conversation sparks a magical moment where we can dive into an idea worth exploring. I'd love to hear more from you. 🫵🏼 Here is my report on why I'm here and my current ZK work themes and ideas: I'm here because of the community. I'm here to share and learn. I'm currently working on my backlog of incomplete and half-baked zettels. Books I'm reading or will be reading this week: Duhigg, Charles. Supercommunicators: How to Unlock the Secret Language of Connection. First large print edition, Random House Large Print, 2024. Robertson, Donald. How to Think Like Socrates: Ancient Philosophy as a Way of Life in the Modern World. First edition, St. Martin’s Press, 2024. Zettelkasting Soundtrack: Olivia Belli Runar Blesvik Saah Carla Bley ★★★★★ This rolling 15-day zettel production is produced by a script for attachment to my daily journaling template. I use Bear to keep my journaling separate from my work on knowledge. Please let me know if you would like to review, discuss, or provide feedback on these notes. My 15 day zettel production I hope my contribution is helpful, and you have even better ideas.  ( 3 min )
  • Open

    Announcing Casual Timezone
    Always know what time it is over there. Announcing Casual Timezone, now available as part of the Casual v2.5.0 update on MELPA. submitted by /u/kickingvegas1 [link] [comments]
    Trying to Change Backup Path
    I am trying to change the auto backup path to save all files backups to a directory at ~/.emacsBackups I created a file at ~/.emacs.d/init.el Also I created an empty directory for the backups at ~/.emacsBackups Then I added the below code to the file: (let ((backup-dir "~/.emacsBackups")) (setq backup-directory-alist '(("." . ,backup-dir))) I closed emacs and re-opened again and tested this on a dummy file but emacs still saves the backup on the same directory as the original file. This is my first time using lisp to modify emacs and I do not know what I am missing. submitted by /u/Plastic_Weather7484 [link] [comments]
    vTerm and Terminal Emulator Performance in Emacs
    I love living in Emacs and try to do as much as possible within it, but there's one thing that consistently bothers me -- Terminal emulator performance. While I typically use Alacritty and Ghostty as standalone terminals, using vTerm inside Emacs just feels sluggish. I've tried tweaking vterm-timer-delay to 0.01, but it still feels slow when rendering large chunks of text—whether that's ls-ing a directory with many files or just running something like cargo build. I should mention upfront that I'm not an expert on Emacs internals or how everything works under the hood. That said, I'm curious: Is there any technique/config I'm missing that could make vTerm feel snappier? OR Is GPU-accelerated terminal emulation something that could come to Emacs in the future? (Not saying forks like emacs-ng) This question was partly inspired by Ghostty, which released version 1.0 about 4 months ago. One of their main selling points is the upcoming libghostty library, and since then I've been wondering about this myself and seen folks in official Discord discussing the possibility of integrating it with Emacs. What's your experience with terminal emulators in Emacs? Is there anyone likes me that hopping a fast terminal emulator experience in Emacs, or any good workarounds I should know about? submitted by /u/WuuBoLin [link] [comments]
    [ANN] Uniline, new version
    With uniline-mode, add diagrams and drawings to your text files. Use only Unicode characters. No PNG, SVG, JPG. Pure Emacs without external dependencies. ╭─▷─╮ ╔═▷═╗ △ ● ▽ △ □ ▽ ╰─◁─╯ ╚═◁═╝ ┏━━━━━━━━━━━┓ ┏━━━━━━━━━━━┓ ┃soft change┃ ┃hard change┃ ┗━━━━━△━━━━━┛ ┗━━━━━△━━━━━┛ ╰──╴exchange╶──╯ ┏━━━┓ □──▶ 1 ┠─╮ ┏━━━┓ ╭─■ ┗━━━┛ ╰─▶ 2 ┠─╮ ┏━━━┓│ ┗━━━┛ ╰─▶ 3 ┠╯ ┗━━━┛ sample of Uniline drawn sketch Think of uniline-mode as artist-mode or picture-mode, operating on UTF-8 files rather than ASCII ones. The package was first published on MELPA last October. Since then, it has improved with new features and code optimization. flood fill, contour tracing, en-boxing, more Unicode glyphs, fine interactive tweaking of single glyphs, directional macros, bulk style change, including ASCII to Unicode, enhanced interactive interface, Transient interface (still experimental) alongside with Hydra interface. Documentation here: https://github.com/tbanel/uniline/blob/main/README.org GPL license. Feedback welcome. Have fun! submitted by /u/OrganicPossession130 [link] [comments]
    Any former vim users(or Neovim users), what made you switch to emacs?
    I am currently a Neovim user thinking of expanding my horizons to potentially new editors, instead of just sticking with one and living in a confort bubble). I installed a line editor called tecoc and just installed sciteco, a visual teco text editor. Now I'm looking into emacs. What was it about Emacs (or Vim) that made you switch from Vim to Emacs and why? submitted by /u/multitrack-collector [link] [comments]
    Lightweight MariaDB client for Emacs?
    I'm developing a package that needs to make a few SQL queries. I don't need an interactive shell or any fancy table views and just looking for something very very basic. Is there something that isn't a wrapper around the mysql binary or does this need to be written as an Emacs module? submitted by /u/surveypoodle [link] [comments]

  • Open

    Emacs Redux: Let’s make keyboard-quit smarter
    Found this tip and the accompanying code super useful as it fixes one of my few annoyances with Emacs. Apparently, it's part of the crux package, which I had never heard before. submitted by /u/chum_cha [link] [comments]
    bible-gateway: A BibleGateway Client for Emacs
    Announcing bible-gateway, formerly votd, a BibleGateway client for Emacs with the following new features: - Fetches the verse of the day for use as an emacs-dashboard footer or *scratch* buffer message. - Retrieves a requested verse, passage, or chapter and inserts it at point. - Provides autocompletion for Bible books and offers hints about available chapters. - Supports various Bible translations available in different languages from the public domain, such as KJV (English), LSG (French), RVA (Spanish), ALB (Albanian), UKR (Ukrainian), ... - Allows users to request a chapter and retrieves and plays the audio in the Browser or in Emacs using EMMS (currently available only in KJV). Suggestions are welcome, and sorry for spamming if not interested! submitted by /u/MhvxvLvJrg [link] [comments]
    Can an Emacs 30.1 user try to reproduce an issue I'm having with a package?
    I'm having some trouble with the org-srs package. It's giving me a strange error, and I've been trying to get some help from the package maintainer, but they are not able to reproduce it. I've had this error on two different computers running different operating systems (Linux and MacOS) though, both with Emacs 30.1, so I don't understand why it cannot be reproduced. I created a demo repo to easily reproduce the error. I'm hoping someone can checkout the repo and run Emacs with --init-directory pointed at it and see if they can reproduce the error. https://github.com/DevJac/emacs-org-srs-bug-demo is the repo. It contains some details about the bug and steps to reproduce it. The repo is small, only 3 files, and the config is just 5 lines (it does checkout the org-srs package from github though, which will pull in a lot of org-srs code). submitted by /u/Buttons840 [link] [comments]
    Which emacs packages don't benefit much from being written in ELisp?
    Emacs Lisp makes things configurable at runtime, which is great. Emacs also allows you to write modules in C, which can expose an ELisp interface. I'm wondering which packages might actually benefit from being rewritten in C instead of ELisp, especially if it's one which most people don't modify. submitted by /u/signalclown [link] [comments]
    Can emacs support a Writer, Engineer, and Project Manager?
    Hello everyone, I’m a construction engineer by profession and a hobbyist writer (both in English and Romanian). For years, I was a pen-and-paper guy, then switched to Google Keep for quick notes. Eventually, I discovered the power of text file search and moved to Notepad++, which felt far better than working in MS Word. Since then, I’ve explored various note-taking apps, searching for something as fast and smooth as Notepad++ but with more features. That journey led me to Obsidian — great tool, but it left me wanting more from a text editor. That’s when I discovered Emacs. From what I’ve seen, it’s by far the most powerful and customizable editor out there. The deeper I dig, the more I want to dive into it fully. The problem? I don’t know how to code — at all. And I am bound to suffer m…
    rms signed
    submitted by /u/xuehuabi [link] [comments]
    Do you recommend a modeline for Emacs
    I want a minimalist modeline that can be powerful when is needed is that means that can be used in a more powerful way I want something that by default look enough, I want to know if exists something like that I would want something between nano-modeline and doom but that has the advantages of both of them submitted by /u/Character_Zone7286 [link] [comments]
  • Open

    Violating memory safety with Haskell's value restriction
    submitted by /u/philh [link] [comments]
    Help: GHC ABIs don't match!
    I am getting crazy wrapping my head around this problem. I'm trying to have haskell-language-server working in a Stack project. Running: stack exec -- haskell-language-server-wrapper --lsp or just haskell-language-server-wrapper --lsp I get: ``` No 'hie.yaml' found. Try to discover the project type! Run entered for haskell-language-server-wrapper(haskell-language-server-wrapper) Version 2.10.0.0 x86_64 ghc-9.10.1 Current directory: /home/arialdo/prg/haskell Operating system: linux Arguments: ["--lsp"] Cradle directory: /home/arialdo/prg/haskell Cradle type: Default Tool versions found on the $PATH cabal: 3.12.1.0 stack: 3.3.1 ghc: 9.8.4 Consulting the cradle to get project GHC version... 2025-06-01T12:29:31.416669Z | Debug | ghc --numeric-version Project GHC version: 9.8.4 has…
    Monthly Hask Anything (June 2025)
    This is your opportunity to ask any questions you feel don't deserve their own threads, no matter how small or simple they might be! submitted by /u/AutoModerator [link] [comments]
  • Open

    daselt (20250601.1703) --- Module for the Daselt configuration scheme
    The daselt package has been updated to version 20250601.1703.
    python-coverage (20250601.1621) --- Show Python coverage via overlays or Flycheck
    The python-coverage package has been updated to version 20250601.1621.
    libmpdel (20250601.1544) --- Communication with an MPD server
    The libmpdel package has been updated to version 20250601.1544.
    p-search (20250601.1523) --- Emacs Search Tool Aggregator
    The p-search package has been updated to version 20250601.1523.
    transient (20250601.1410) --- Transient commands
    The transient package has been updated to version 20250601.1410.
    tray (20250601.1101) --- Various transient menus
    The tray package has been updated to version 20250601.1101.
    sisyphus (20250601.1100) --- Create releases of Emacs packages
    The sisyphus package has been updated to version 20250601.1100.
    orgit-forge (20250601.1059) --- Org links to Forge issue buffers
    The orgit-forge package has been updated to version 20250601.1059.
    notmuch-transient (20250601.1056) --- Command dispatchers for Notmuch
    The notmuch-transient package has been updated to version 20250601.1056.
    epkg-marginalia (20250601.1049) --- Show Epkg information in completion annotations
    The epkg-marginalia package has been updated to version 20250601.1049.
    epkg (20250601.1044) --- Browse the Emacsmirror package database
    The epkg package has been updated to version 20250601.1044.
    magit-section (20250601.1028) --- Sections for read-only buffers
    The magit-section package has been updated to version 20250601.1028.
    elx (20250601.1017) --- Extract information from Emacs Lisp libraries
    The elx package has been updated to version 20250601.1017.
    ghub (20250601.1014) --- Client libraries for Git forge APIs
    The ghub package has been updated to version 20250601.1014.
    closql (20250601.1010) --- Store EIEIO objects using EmacSQL
    The closql package has been updated to version 20250601.1010.
    emacsql (20250601.1009) --- High-level SQL database front-end
    The emacsql package has been updated to version 20250601.1009.
    bicycle (20250601.1007) --- Cycle outline and code visibility
    The bicycle package has been updated to version 20250601.1007.
    backline (20250601.1005) --- Preserve appearance of outline headings
    The backline package has been updated to version 20250601.1005.
    outline-minor-faces (20250601.1003) --- Highlight only section headings
    The outline-minor-faces package has been updated to version 20250601.1003.
    moody (20250601.1001) --- Tabs and ribbons for the mode line
    The moody package has been updated to version 20250601.1001.
    llama (20250601.1000) --- Compact syntax for short lambda
    The llama package has been updated to version 20250601.1000.
    cfn-mode (20250601.805) --- AWS cloudformation mode
    The cfn-mode package has been updated to version 20250601.805.
    fontsloth (20250601.207) --- Elisp otf/ttf font loader/renderer
    The fontsloth package has been updated to version 20250601.207.
  • Open

    This week in #Scala (Jun 2, 2025)
    submitted by /u/petrzapletal [link] [comments]

  • Open

    with-editor (20250531.2230) --- Use the Emacsclient as $EDITOR
    The with-editor package has been updated to version 20250531.2230.
    paren-face (20250531.2229) --- A face for parentheses in lisp modes
    The paren-face package has been updated to version 20250531.2229.
    orglink (20250531.2228) --- Use Org Mode links in other modes
    The orglink package has been updated to version 20250531.2228.
    ol-notmuch (20250531.2228) --- Links to notmuch messages
    The ol-notmuch package has been updated to version 20250531.2228.
    notmuch-maildir (20250531.2223) --- Display maildirs as a tree
    The notmuch-maildir package has been updated to version 20250531.2223.
    notmuch-addr (20250531.2222) --- Improved address completion for Notmuch
    The notmuch-addr package has been updated to version 20250531.2222.
    no-littering (20250531.2221) --- Help keeping ~/.config/emacs clean
    The no-littering package has been updated to version 20250531.2221.
    morlock (20250531.2221) --- More font-lock keywords for elisp
    The morlock package has been updated to version 20250531.2221.
    mode-line-debug (20250531.2220) --- Show status of debug-on-error in mode-line
    The mode-line-debug package has been updated to version 20250531.2220.
    minions (20250531.2220) --- A minor-mode menu for the mode line
    The minions package has been updated to version 20250531.2220.
    keymap-utils (20250531.2219) --- Keymap utilities
    The keymap-utils package has been updated to version 20250531.2219.
    keycast (20250531.2219) --- Show current command and its binding
    The keycast package has been updated to version 20250531.2219.
    imake (20250531.2218) --- Simple, opinionated make target runner
    The imake package has been updated to version 20250531.2218.
    hl-todo (20250531.2218) --- Highlight TODO and similar keywords
    The hl-todo package has been updated to version 20250531.2218.
    git-modes (20250531.2217) --- Major modes for editing Git configuration files
    The git-modes package has been updated to version 20250531.2217.
    fwb-cmds (20250531.2217) --- Misc frame, window and buffer commands
    The fwb-cmds package has been updated to version 20250531.2217.
    dim-autoload (20250531.2216) --- Dim or hide autoload cookie lines
    The dim-autoload package has been updated to version 20250531.2216.
    frameshot (20250531.2216) --- Take screenshots of a frame
    The frameshot package has been updated to version 20250531.2216.
    auto-compile (20250531.2214) --- Automatically compile Emacs Lisp libraries
    The auto-compile package has been updated to version 20250531.2214.
    denote-explore (20250531.2110) --- Explore and visualise Denote files
    The denote-explore package has been updated to version 20250531.2110.
    poly-markdown (20250531.1935) --- Polymode for markdown-mode
    The poly-markdown package has been updated to version 20250531.1935.
    flymake-collection (20250531.1243) --- Collection of checkers for flymake, bringing flymake to the level of flycheck
    The flymake-collection package has been updated to version 20250531.1243.
    projection (20250531.1228) --- Project type support for `project'
    The projection package has been updated to version 20250531.1228.
    spacemacs-theme (20250531.1225) --- Color theme with a dark and light versions
    The spacemacs-theme package has been updated to version 20250531.1225.
    reverso (20250531.950) --- Translation, grammar checking, context search
    The reverso package has been updated to version 20250531.950.
    mistty (20250531.814) --- Shell/Comint alternative based on term.el
    The mistty package has been updated to version 20250531.814.
  • Open

    useful uses of key-chords?
    I just found key-chords from emacsrocks, and I was wondering if anyone had any unique, helpful ways of using chord binds. this is the first one I've done (key-chord-define-global "xf" 'jump-char-forward) submitted by /u/Independent-Time-667 [link] [comments]
    TrAPT 1.0
    A simple tool using transient menus for those who want to manage the advanced package tool (Debian, Ubuntu, Mint, etc.) from Emacs. A few highlights: Display results from apt list in a tablist buffer and mark packages for other apt operations Export apt list to Org mode and mark packages for install/removal/purge etc.. with TODO keywrods Run apt on a remote system with tramp and ssh, select remotes with completion Mark packages in your config requiring external dependencies and generate a tablist report of external programs and their paths (similar to whicher) Requires Emacs 28.1 or newer submitted by /u/One_Two8847 [link] [comments]
    gptel-autocomplete: Inline code completion using gptel
    I've recently started using gptel and really like it, but the main feature I've wanted that it's missing is inline code completion (like GitHub Copilot). I saw that this was previously being worked on in the gptel repo but was paused, so I decided to give it a shot and made gptel-autocomplete (disclosure: most of it was written by Claude Sonnet 4). Here's the package repo: https://github.com/JDNdeveloper/gptel-autocomplete It took some experimenting to get decent code completion results from a chat API that isn't built for standalone code completion responses, but I found some techniques that worked well (details in the README). submitted by /u/JDN3 [link] [comments]
    ox-reveal not available for install via package-install but try package can find it
    I have used org-reveal few years ago to export org file as presentations. But now it appears unavailable via package-install command M-x package-install M-x try M-x package-install RET org-reveal also show nothing. Why is this the case? Here are my package-archives (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) (add-to-list 'package-archives '("nongnu" . "https://elpa.nongnu.org/nongnu/")) submitted by /u/paarulakan [link] [comments]
    MUD clients?
    I'm looking for an Emacs MUD client, and was wondering if anyone here has one they would recommend? I ran across this post, but it's from 2018 and I wonder if the landscape has changed any since then. submitted by /u/dargscisyhp [link] [comments]
    Is Emacs undo different from normal undo?
    I'm using Doom Emacs and the u key is for undo. When I press u, sometimes it's hard to tell what it really did and if there are a few things to undo, it gets confusing very quickly. I'm wondering if Emacs undo is fundamentally different. submitted by /u/surveypoodle [link] [comments]
    Prompt about mail server configuration during installation
    Hi, After getting familiar with Vim to some degree I've decided to try Emacs. However, it seems like installation process is not so simple or should I say straightforward, for me at least. I'm not an advanced user by any means, just a novice learning a bit by bit my way around new OS (Ubuntu 24.04) and its tools so please, be easy on me. Is there any well-known guide how you need to proceed with mail server config question? Or should it be ignored and installed anyway? Please, advice what should be done. Thanks. submitted by /u/Max_771 [link] [comments]
    What would your dev + PKM setup be if you were 22 and starting a CS master’s in 2025?
    I’m 22, going into masters in CS. I’ve been using obsidian for knowledge management business, and a jetbrains IDE for coding. If you were in my shoes – young, in CS, and planning ahead, considering where future tech is leading, Age of AI, etc – what would you do? Keep using Obsidian (with some Vim keybindings) + a dedicated IDE? Stick with obsidian until better software comes out 10+ years down the road? Go all-in on Emacs and build everything inside one system? Something else? Curious what direction you’d take if you were starting fresh today in 2025. Thanks so much in advance – can’t wait to hear your ideas! submitted by /u/Future_Recognition84 [link] [comments]
    [Emacs Lisp] Read a Lisp timestamp from the calendar UI?
    Hi all, I am writing my first Emacs package, in which the user must be prompted for a date. I think the calendar is a perfect fit for this, UI-wise. However I don't know how to simply read a Lisp timestamp from it. A good candidate for this would be org-read-date, but I'm not sure if it is good practice to make a package depend on Org just for that function. I have read this SO answer, and in particular the comments from this answer that confused me: I'd now suggest (eval-when-compile (require 'org)) at the top-level to ensure that org is available and that the code compiles cleanly, and (autoload 'org-read-date "org") to lazily load it when needed later. If I understand correctly, I should insert this at the top of my package code: (eval-when-compile (require 'org)) ;; for correct byte-compilation (autoload 'org-read-date "org") ;; for lazy runtime loading ...then simply use `org-read-date` when I see fit. However I'd be grateful is someone could provide more context and explanations. Thank you :) submitted by /u/e57Kp9P7 [link] [comments]
    Working in CyberSecurity and using Doom org-mode to track task/project time
    I've been asked by a junior CyberSecurity Analyst (just moved over to our team from internal IT support) how can they adopt Emacs [org-mode] as a basis for their task and project workflow. I use multiple packages (Org-Roam, Marginalia, Vertico, and Org-SuperAgenda). From what I gather from the analyst, they want the quick workflow-reaction that they see when they're shoulder-surfing. The analyst has no programming experience so I anticipate a potentially steep learning curve. Thoughts on how to bring somebody "into the fold"? submitted by /u/My_medula_hurts [link] [comments]
  • Open

    [ANN] haskell-halogen-core is now on Hackage
    https://hackage.haskell.org/package/haskell-halogen-core submitted by /u/Swordlash [link] [comments]
  • Open

    🗃️ [v4.0 Release] LightDB – Blazingly fast embedded Scala DB with key-value, SQL, graph, and full-text search
    I just released LightDB 4.0, a significant update to my embedded database for Scala. If you’ve ever wished RocksDB, Lucene, and Cypher all played nicely inside your app with Scala-first APIs, this is it. LightDB is a fully embeddable, blazing-fast database library that supports: 🔑 Key-value store APIs (RocksDB, LMDB, and more) 🧮 SQL-style queries with a concise Scala DSL 🌐 Graph traversal engine for connected data 🔍 Full-text search and faceting via Lucene 💾 Persistence or pure in-memory operation 🧵 Optimized for parallel processing and real-time querying It’s built for performance-critical applications. In my own use case, LightDB reduced processing time from multiple days to just a few hours, even on large, complex datasets involving search, graph traversal, and joins. 🔗 GitHub: https://github.com/outr/lightdb 📘 Examples and docs included in the repo. If you're working on local data processing, offline search, or graph-based systems in Scala, I’d love your feedback. Contributions and stars are very welcome! submitted by /u/darkfrog26 [link] [comments]
    Making ScalaSql boring again (with interesting new internals)
    This blog post summarises why I contributed SimpleTable to the ScalaSql library, which reduces boilerplate by pushing some complexity into the implementation. (For the impatient: case class definitions for tables no longer require higher kinded type parameters, thanks to the new named tuples feature in Scala 3.7.) submitted by /u/jr_thompson [link] [comments]

  • Open

    IRS Direct File, Written in Scala, Open Sourced
    submitted by /u/CrazyCrazyCanuck [link] [comments]
  • Open

    just a simple tool for publish to confluence
    Hi guys! I know there are plenty of integrations between emacs and confluence or atlas's Ian tools. But I jus wanted to make some baby steps on making a package for emacs. This sync-docs package only considers unidirectional process, I mean from emacs org file to confluence. Any comment is welcome. https://github.com/laertida/sync-docs.el submitted by /u/laucoonte [link] [comments]
    unique buffer names
    This isn't about `generate-new-buffer-name`, which tacks an incrementing "" to the back of buffer names that would be otherwise identical. My question is about how emacs "" to all buffers containing files/directories with the same name. I see this commonly with the "src" subdirectory, which shows up in many project directories. Where is this buried? I looked through the elisp manual Files and Buffers sections, but could not find anything. I dove into the source of find-file, but haven't come across it there either (yet). I've noticed that the magical code adjusts the buffer names of all open buffers of the same name. submitted by /u/republic_of_mao [link] [comments]
    drink-water.el: An Emacs package to remind you of the importance of Hydration
    submitted by /u/larrasket [link] [comments]
    Notmuch - a new adopter's cry for help
    I'm trying out out notmuch after a couple of decades of gnus use and struggling with a paradigm shift. I'm looking to scan my unread email and dismiss several of them as uninteresting in the most efficient manner I can. These are ones I can't easily set an automated rule for. In gnus I'd work through the summary buffer, pressing don the boring ones which would mark them as read and move to the next. In a notmuch unread filtered view I currently have to press k to tag a message, d to delete it and then n to move to the next message. Whilst I could just bind a key to the composition of those three function calls, the existence of notmuch-search-tag-all and notmuch-search-toggle-hide-excluded hints at a more elegant route, not fighting against the notmuch natural flow. What am I missing? submitted by /u/grc007 [link] [comments]
    Repeating winner-redo ?
    With repeat-mode enabled, is it supposed to be possible to repeat winner-redo? For instance, say you have enabled winner-mode with (winner-mode t) in your init file. You work and pass through very window configurations. Then you do C-c to undo by one window configuration. Because winner supports repeat mode, you can now press another five times, and you'll ultimately have moved six steps back, to your sixth last window configuration. Winner even shows a display like (6 / 20) in the minibuffer to show how far back you have gone. But what if you went one too far? winner-redo is bound to C-c and it is also in the repeat map. So you can press and undo the last the undo. Fine. But what if you went three steps too far? This is where I am confused. It seems like it is supposed to be possible to hit more times, and keep undoing the undos, but this does not work. Is it supposed to? submitted by /u/algalgal [link] [comments]
    Has Emacs lost the ability to do spaced repetition?
    It's been awhile since I did spaced repetition in Emacs with org-drill a few years ago. I've been looking into doing spaced repetition in Emacs again, but it looks like there are no good options. org-drill is unmaintained, and I've tried a few more recent options (including Anki integration packages), but they all failed to work even on the examples in their READMEs. Last time this was asked (as far as I can tell), people just said they use Anki: https://www.reddit.com/r/emacs/comments/1dcoml2/please_share_your_emacs_spaced_repetition/ Does Emacs have a good option for doing spaced repetition inside Emacs anymore? I made some bug reports, so hopefully the packages I've tried will get fixed. I'm also using Emacs 30.1; is this an especially new version of Emacs with some compatibility issues maybe? I'm not sure how quickly packages are updated to support the latest Emacs? submitted by /u/Buttons840 [link] [comments]
  • Open

    embark (20250530.1948) --- Conveniently act on minibuffer completions
    The embark package has been updated to version 20250530.1948.
    syntactic-close (20250530.1921) --- Insert closing delimiter
    The syntactic-close package has been updated to version 20250530.1921.
    theme-anchor (20250530.1449) --- Apply theme in current buffer only
    The theme-anchor package has been updated to version 20250530.1449.
    sumibi (20250530.1422) --- Japanese input method powered by ChatGPT API
    The sumibi package has been updated to version 20250530.1422.
  • Open

    A Pattern in Linear Haskell That Is Similar to "Borrow" in Rust
    I've been playing around with Linear Haskell recently. It's really wonderful to achieve safe FFI using linear types. Things like "Foreign.Marshal.Array.withArray" or "Foreign.Marshal.Pool" are awesome, but it cannot do fine-grained lifetime and ownership control like linear types do. But sometimes I feel it's very clunky to pass resources like "arr5 <- doSomthing arr4" everywhere. To make code more readable, I accidentally produced something very similar to borrow checking in Rust. It seems to be correct, But I wonder if there are more optimal implementations. Apologies if this is too trivial to be worth sharing. https://pastebin.ubuntu.com/p/KyN7zxG83H/ UPDATE: This is another implementation with additional type checking that can prevent references from escaping the borrowing block. While theoretically it's still possible to construct examples of escaped reference, I believe this is safe enough for a pattern. https://pastebin.ubuntu.com/p/FcbHsHm9hh/ submitted by /u/YellowRemarkable201 [link] [comments]
    I've been working on a haskell-language-server plugin
    It's is conceptually very similar to (and cribs heavily from) hls-eval-plugin. However, unlike hls-eval-plugin, it's not triggered by doctest comments, instead it takes a "configuration" file, containing a number of Haskell functions, and for each combination of "value in the current module" and "function in the config", if the result of applying the function to the value is IO () it generates a code lens which runs that result. It's still at the Proof of Concept stage, but I think it's demoable submitted by /u/hungryjoewarren [link] [comments]
    Variable tracer
    I want to build a variable tracer for Haskell any heads up ? submitted by /u/Firm-Minute-6459 [link] [comments]

  • Open

    macports (20250529.2306) --- A porcelain for MacPorts
    The macports package has been updated to version 20250529.2306.
    bible-gateway (20250529.2232) --- A Simple BibleGateway Client
    The bible-gateway package has been updated to version 20250529.2232.
    copilot-chat (20250529.1744) --- Copilot chat interface
    The copilot-chat package has been updated to version 20250529.1744.
    toml (20250529.1353) --- TOML (Tom's Obvious, Minimal Language) parser
    The toml package has been updated to version 20250529.1353.
    treemacs (20250529.1243) --- A tree style file explorer package
    The treemacs package has been updated to version 20250529.1243.
    cargo-mode (20250529.1140) --- Cargo Major Mode. Cargo is the Rust package manager
    The cargo-mode package has been updated to version 20250529.1140.
    cider (20250529.1006) --- Clojure Interactive Development Environment that Rocks
    The cider package has been updated to version 20250529.1006.
    yaml-pro (20250529.914) --- Parser-aided YAML editing features
    The yaml-pro package has been updated to version 20250529.914.
    chatgpt-shell (20250529.914) --- A family of utilities to interact with LLMs (ChatGPT, Claude, DeepSeek, Gemini, Kagi, Ollama, Perplexity)
    The chatgpt-shell package has been updated to version 20250529.914.
  • Open

    ZIO: Proper way to provide layers
    I am working on a project for my master's program and chose to use scala with ZIO for the backend. I have setup a simple server for now. My main question is with how/where to provide the layers/env? In the first image I provide the layer at server initialization level and this works great. The responses are returned within 60 ms. But if I provide the layer at the route level, then the response time goes to 2 + seconds. Ideally I would like to provide layers specific to the routes. Is there any way to fix this or what am I doing wrong? https://preview.redd.it/awv7wdvnus3f1.png?width=969&format=png&auto=webp&s=e21348376ddc54c2f6633727926e78930997e999 https://preview.redd.it/uqu12olqus3f1.png?width=1517&format=png&auto=webp&s=ad863f80336dda8bf934588b849e3d49f692ed79 submitted by /u/sjoseph125 [link] [comments]
  • Open

    Emacs on Android is pretty good
    submitted by /u/krisbalintona [link] [comments]
    Who moved my cheese (or my point)
    I have a routine to restore the fold structure of my org buffer, hooked to org-mode-hook. It works fine if I directly call it, but, on startup, something moves point after I've set it. I can't even figure out how to debug this anymore. Does a wise person have a clue for me? Cheers submitted by /u/AnonymousRedCow [link] [comments]
    enhanced-evil-paredit.el - Improved Emacs Paredit support with Evil keybindings (Release 1.0.2 of the maintained fork of evil-paredit)
    submitted by /u/jamescherti [link] [comments]
    need help: when on-save hooks are running (or any other code, it seems), evil-mode ESC key acts as meta-prefix
    Hello all, I've got an issue where emacs, when run in a window, will behave as expected, but when run in a terminal (-nw), the ESC key will no longer work as expected. Normally, I can type something like : w RET ESC k and this saves the file, and moves up one line (the ESC does nothing but reset the state). But, when in the terminal, if there are on-save hooks (and so emacs is hanging briefly), that key combination (specifically press-and-release ESC) is registered as : w RET M-k. Could anyone help troubleshoot this? I've literally never used ESC as a meta-prefix, and wish I could completely unbind it as a meta prefix, but that doesn't seem to be obviously doable, based on the manual and other discussion I've found. submitted by /u/MaherVelousSc2 [link] [comments]
    elisp: atoms vs symbols
    In emacs lisp, we can sometimes use symbols or atoms for keys in plists or similar purposes. This makes me wonder, which of the following is preferred? What is the difference in behaviour? Some examples: (split-string (buffer-string) "\\n" :omit-nulls) (split-string (buffer-string) "\\n" 'omit-nulls) (split-string (buffer-string) "\\n" t) ;; less readable Would you prefer :omit-nulls or 'omit-nulls here? And why? In a plist we have a similar choice: (let ((pet1 '(species "dog" name "Lassie" age 2)) (pet2 '(:species "fish" :name "Nemo" :age 2)))) (plist-get pet1 'species) (plist-get pet2 :name)) The same happens with alists, or with property names for objects or structs. Any advice? submitted by /u/knalkip [link] [comments]
  • Open

    [ANN] Telescope - Work with scientific data files commonly used in astronomy
    I'm pleased to annouce Telescope, a library to work with FITS and ASDF files, commonly used for astronomical observations such as Hubble, JWST, and DKIST Github Hackage Written to support the generation of Level 2 data for the DKIST Solar Telescope, the library includes: Monadic metadata parsers Easily parse and encode to haskell records using generics Integration with Massiv to read and manipulate raw data World Coorindate System support Check out the readme for examples and links to raw data. Let me know if you have any questions! submitted by /u/embwbam [link] [comments]
    A break from programming languages
    submitted by /u/n00bomb [link] [comments]
    MonadFix instance for ExceptT
    Hi all, my journey into Haskell rabbit hole continues. Having implemented STM based JWT cache for PostgREST I started wondering if it is possible to avoid double key lookup (the first one to check if a key is present in the cache and the second one - to insert it into the cache). I found a clever way to make use of Haskell laziness to do that - https://hackage.haskell.org/package/lazy-cache I managed to implement the idea: https://github.com/mkleczek/postgrest/blob/fe098dd9cfdf2a1b8ca047583560b6cdc642ada7/src/PostgREST/Cache/Sieve.hs#L85 I want my cache to be polymorphic over value computation monad, so that it is possible to easily switch between caching errors and not caching errors - see: https://github.com/mkleczek/postgrest/blob/ab1c859fd9d346543b7887f7e98ddab0ab7c25db/src/PostgREST/Auth/JwtCache.hs#L54 for example usage. To my surprise it compiled with ExceptT e IO v monad. And then... failed in tests with: uncaught exception: ErrorCall mfix (ExceptT): inner computation returned Left value CallStack (from HasCallStack): error, called at libraries/transformers/Control/Monad/Trans/Except.hs:246:20 in transformers-0.5.6.2:Control.Monad.Trans.Except It appears ExceptT implementation of MonadFix is partial! So two questions: What is the reasoning for providing MonadFix for ExceptT at all? How to deal with this - I somehow need to handle errors, bypass caching them and rethrow them. submitted by /u/klekpl [link] [comments]
    Blog: Simple Hindley-Milner in Practice
    Hi all, I've written a blog post on implementing a simple Hindley-Milner type system in Haskell. It focuses on the high-level principles; generalisation, instantiation and unification. With a code walkthrough for a tiny statically typed LISP, from parser to REPL. It’s not production-grade or performance-tuned. The goal is a lightweight, practical implementation to help demystify how HM type inference works. Hopefully it's useful if you're exploring type systems or curious about how Hindley-Milner works in practice. The post ended up a bit long, but I’ve tried to keep it readable and well-structured. I’d love to hear your thoughts or feedback. 👉 Blog post submitted by /u/andrevdm_reddit [link] [comments]
  • Open

    Issue 474
    Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community. Featured Я ☞ Why should we label effects? by Murat Kasimov Here is the first chapter on explaining implementation details in Я - effect labels. They let you define a variety of behaviour (type class instances) without involving newtype wrappers. Haskell Foreign Library For The DISTRHO Plugin Framework by Tristan de Cacqueray This post demonstrates how I created Pluguzu, a CLever Audio Plug-in (CLAP), to run TidalCycles (Tidal) inside a Digital Audio Workstation (DAW). Indexing Hackage: Glean vs. hiedb by Simon Marlow I thought it might be fun to try to use Glean to index as much of Hackage as I c…  ( 2 min )
2025-06-27T20:39:42.986Z osmosfeed 1.15.1